/// <summary> /// Remove Fornecedor através da grid. /// </summary> private void RemoveGridProvider() { /// Seta os dados do fornecedor selecionado na grid. UpdateProviderOnSelect(); //Verifica se o fornecedor atual existe no banco. if (currentProvider.id != 0) { RefreshEFContext(); try { provider dBProvider = EFContext.providers.Find(currentProvider.id); EFContext.providers.Remove(dBProvider); EFContext.SaveChanges(); ResetProviderFields(); ButtonsHandler(); SearchProvider(); } catch { msgBox = new AlphaMessageBox(mainWindowContext.productWindow, "Não foi possivel excluir este fornecedor."); msgBox.ShowDialog(); } } else { msgBox = new AlphaMessageBox(mainWindowContext.productWindow, "Selecione um fornecedor para excluir."); msgBox.ShowDialog(); } }
/// <summary> /// Método para remover produto através da grid. /// </summary> private void RemoveGridProduct() { //Seta os dados do produto na instância UpdateProductOnSelect(); //Verifica se o fornecedor atual existe no banco. if (currentProduct.id != 0) { try { //RefreshEFContext(); product dBProduct = EFContext.products.Find(currentProduct.id); EFContext.products.Remove(dBProduct); EFContext.SaveChanges(); currentProduct = new product(); CanDeleteProduct = false; ButtonsHandler(); SearchProduct(); } catch { msgBox = new AlphaMessageBox(mainWindowContext.productWindow, "Não foi possivel excluir este Produto."); msgBox.ShowDialog(); } } else { msgBox = new AlphaMessageBox(mainWindowContext.productWindow, "Selecione um produto para excluir."); msgBox.ShowDialog(); } }
/// <summary> /// Insere ou atualiza dados do produto atual. /// </summary> private void InsertOrUpdateProduct() { //Verifica se todos os campos obrigatórios estão preenchidos. if ((currentProduct.name != null && selectedProvider != null) && (currentProduct.name != "" && selectedProvider != "")) { //Insere um novo Produto if (currentProduct.id == 0) { DataTable providerFounded = ADOHelper.QueryProvidersByName(mainWindowContext.connectionString, selectedProvider); currentProduct.provider_id = (int)providerFounded.Rows[0][0]; DataTable productFounded = ADOHelper.QueryProductsByName(mainWindowContext.connectionString, currentProduct.name, "="); if (productFounded.Rows.Count == 0) { EFContext.products.Add(currentProduct); EFContext.SaveChanges(); RefreshEFContext(); productFounded = ADOHelper.QueryProductsByName(mainWindowContext.connectionString, currentProduct.name); currentProduct.id = (int)productFounded.Rows[0][0]; ResetProductFields(); ButtonsHandler(); SearchProduct(); isRegisterTabFocused = false; isQueryTabFocused = true; } else { msgBox = new AlphaMessageBox(mainWindowContext.productWindow, "Já existe um produto com este nome."); msgBox.ShowDialog(); } } else { product oldProduct = EFContext.products.Find(currentProduct.id); DataTable providerFounded = ADOHelper.QueryProvidersByName(mainWindowContext.connectionString, selectedProvider, "", "="); currentProduct.provider_id = (int)providerFounded.Rows[0][0]; UpdateProduct(oldProduct); EFContext.SaveChanges(); ResetProductFields(); ButtonsHandler(); SearchProduct(); isRegisterTabFocused = false; isQueryTabFocused = true; } } else { msgBox = new AlphaMessageBox(mainWindowContext.productWindow, "Preencha os campos obrigatórios."); msgBox.ShowDialog(); } }
/// <summary> /// Captura dados do fornecedor no webservice e preenche o cadastro /// </summary> private void GetProviderFromWeb() { if (currentProvider.cnpj.Length == 14) { string webResponse = HttpHelper.GetRequest(currentProvider.cnpj); WebProviderModel webProvider = JsonHelper.GetJsonProvider(webResponse); if (webProvider != null) { currentProvider.name = webProvider.alias; currentProvider.social_name = webProvider.name; currentProvider.email = webProvider.email; currentProvider.phone = webProvider.phone; } else { msgBox = new AlphaMessageBox(mainWindowContext.productWindow, "Não foi possível encontrar dados deste CNPJ."); msgBox.ShowDialog(); } } }
/// <summary> /// Faz a validação do login. /// </summary> /// <param name="username"></param> /// <param name="password"></param> /// <returns></returns> private void ValidateLogin() { if (username != "" && password != "") { bool isFailed = true; DataTable user = ADOHelper.QueryUserByUsername(connectionString, username); if (user != null) { try { hashPswd = user.Rows[0][3].ToString(); } catch { //tratar } } if (hashPswd != null) { if (ValidatePassword(password, hashPswd)) { isFailed = false; } } if (!isFailed) { SignIn(user); } else { AlphaMessageBox msg = new AlphaMessageBox(loginWindow, "Usuário ou senha inválidos."); msg.Show(); } } else { AlphaMessageBox msg = new AlphaMessageBox(loginWindow, "Ops. Usuário e senha precisam estar preenchidos."); msg.Show(); } }
/// <summary> /// Remove Fornecedor /// </summary> private void RemoveProvider() { //Verifica se o fornecedor atual existe no banco. if (currentProvider.id != 0) { RefreshEFContext(); try { provider dBProvider = EFContext.providers.Find(currentProvider.id); EFContext.providers.Remove(dBProvider); EFContext.SaveChanges(); ResetProviderFields(); ButtonsHandler(); SearchProvider(); isRegisterTabFocused = false; isQueryTabFocused = true; } catch { msgBox = new AlphaMessageBox(mainWindowContext.productWindow, "Náo foi possivel excluir este fornecedor."); msgBox.ShowDialog(); } } }
/// <summary> /// Insere ou atualiza dados do fornecedor atual. /// </summary> private void InsertOrUpdateProvider() { //Verifica se todos os campos obrigatórios estão preenchidos. if ((currentProvider.name != null && currentProvider.social_name != null && currentProvider.cnpj != null && currentProvider.adress != null) && (currentProvider.name != "" && currentProvider.social_name != "" && currentProvider.cnpj != "" && currentProvider.adress != "")) { RefreshEFContext(); //Insere um novo fornecedor. if (currentProvider.id == 0) { try { DataTable providerFounded = ADOHelper.QueryProvidersByName(mainWindowContext.connectionString, currentProvider.name, "", "="); if (providerFounded.Rows.Count == 0) { EFContext.providers.Add(currentProvider); EFContext.SaveChanges(); providerFounded = ADOHelper.QueryProvidersByName(mainWindowContext.connectionString, currentProvider.name); currentProvider.id = (int)providerFounded.Rows[0][0]; ResetProviderFields(); ButtonsHandler(); SearchProvider(); isRegisterTabFocused = false; isQueryTabFocused = true; } else { msgBox = new AlphaMessageBox(mainWindowContext.productWindow, "Já existe um fornecedor com esse nome."); msgBox.ShowDialog(); } } catch { msgBox = new AlphaMessageBox(mainWindowContext.productWindow, "Não foi possível inserir este fornecedor."); msgBox.ShowDialog(); currentProvider = new provider(); } } //Atualiza dados do fornecedor. else { try { provider oldProvider = EFContext.providers.Find(currentProvider.id); UpdateProvider(oldProvider); EFContext.SaveChanges(); ResetProviderFields(); ButtonsHandler(); SearchProvider(); isRegisterTabFocused = false; isQueryTabFocused = true; } catch { msgBox = new AlphaMessageBox(mainWindowContext.productWindow, "Não foi possível inserir este fornecedor."); msgBox.ShowDialog(); currentProvider = new provider(); } } } else { msgBox = new AlphaMessageBox(mainWindowContext.productWindow, "Preencha os campos obrigatórios."); msgBox.ShowDialog(); } }