private void LoadXmlConfig(string path) { try { configXml = PrincipalTO.LoadConfig(path); if (fluxo == UtilDTO.NAVIGATION.SM) { bool hasSharedSm = false; foreach (var partner in configXml.Partners) { if (partner.Contracts.Any(contract => contract.Name == UtilDTO.CONTRACTS.SM_MEDIA.ToString())) { hasSharedSm = true; } } if (!hasSharedSm) { txbResult.Text = "Psiu, olha aqui!\n\nVocê não possui nenhum contrato de SM que receba pela média de times.\n\nSerá que este é o menu que queria entrar mesmo ou falta algo em sua configuração?"; BlockFields(true); } } } catch (FileNotFoundException ex) { txbResult.Text = ex.Message; BlockFields(true); } catch (Exception ex) { txbResult.Text = ex.Message; } }
private void LoadConfig() { try { config = PrincipalTO.LoadConfig(rootFolder); txbAuthorName.Text = config.AuthorName; txbAreaName.Text = config.AreaName; txbTeamName.Text = config.TeamName; foreach (var partner in config.Partners) { lsbPartners.Items.Add(partner.Name); } btnNextForm.Enabled = true; ShowLog("Parece que você tem um arquivo preconfigurado. Legal! Vamos editá-lo\n=]"); } catch (FileNotFoundException) { txbResult.Text = $"Não encontrei um arquivo de configuração na pasta {rootFolder}. Espero que este seja o início de uma nova amizade\n;)"; } catch (Exception ex) { txbResult.Text = ex.Message; } }
private void BtnLoad_Click(object sender, EventArgs e) { string filePath; try { using (OpenFileDialog openFileDialog = new OpenFileDialog()) { openFileDialog.Filter = "XML (*.XML)|*.XML"; openFileDialog.FilterIndex = 1; openFileDialog.RestoreDirectory = true; if (openFileDialog.ShowDialog() == DialogResult.OK) { filePath = openFileDialog.FileName; config = PrincipalTO.LoadConfig(filePath); UpdatePartnersCombo(); UpdateContractsCombo(); txbAuthor.Text = config.AuthorName; txbTeamName.Text = config.TeamName; PrintUserLog("Arquivo de configuração carregado."); } } } catch (Exception ex) { txbResult.Text = $"ERRO\n\n{ex.Message}\n\n{ex.InnerException.Message}"; } }
private void LoadRanges() { sprintRanges = PrincipalTO.GenerateRanges(); foreach (var range in sprintRanges) { cbbSprintRanges.Items.Add(range.Name); } cbbSprintRanges.SelectedIndex = 0; }
private void BtnGenerate_Click(object sender, System.EventArgs e) { try { ValidateFieldsToGenerateDoc(); Processing(true); PrincipalTO.GenerateConfigXmlFile(outputDocPath, outputName, config); txbResult.Text = $"Arquivo {outputName} gerado na pasta {outputDocPath}. Utilize o botão abaixo para abrir a pasta."; btnOpenDestinationFolder.Enabled = true; } catch (Exception ex) { txbResult.Text = ex.Message; } }
private void BtnGenerateFilled_Click(object sender, EventArgs e) { try { ValidateFieldsToGenerateDoc(); Processing(true); config.AuthorName = txbAuthor.Text; config.TeamName = txbTeamName.Text; PrincipalTO.GenerateConfigXmlFile(outputPath, outputName, config); Processing(false); } catch (Exception ex) { txbResult.Text = $"Erro durante geração do arquivo XML. Mensagem:\n{ex.Message}\n\nPilha de erro:\n{ex.StackTrace}"; } }
private void BtnGenerate_Click(object sender, System.EventArgs e) { try { ValidateData(); Processing(true); FornecedorDTO partner = new FornecedorDTO(); partner = configXml.Partners.Find(p => p.Name == cbbPartners.SelectedItem.ToString()); partner.BillingType = UtilDTO.BILLING_TYPE.UST_DEVOPS; PrincipalTO.CreateOpsDoc(configXml, partner, outputDocPath, sprintsDevOpsList); btnOpenDestinationFolder.Enabled = true; txbResult.Text = $"Arquivo gerado em: {outputDocPath}"; } catch (Exception ex) { txbResult.Text = $"ERRO. {ex.Message}"; } }
private void BtnGenerate_Click(object sender, EventArgs e) { txbResult.Text = "Processando..."; BlockScreen(true); try { PrincipalTO.CalcSmSprintData(sprintsSmList); PrincipalTO.CreateSmDoc(configXml, selectedPartner, outputDocPath, sprintsSmList); txbResult.Text = $"Relatório gerado na pasta {outputDocPath}"; } catch (Exception ex) { txbResult.Text = $"Falha ao gerar arquivo. {ex.Message}"; } finally { BlockScreen(false); } }
private void LoadConfig() { try { //load config configXml = PrincipalTO.LoadConfig(outputDocPath); //set partners foreach (var partner in configXml.Partners) { cbbPartners.Items.Add(partner.Name); } cbbPartners.SelectedIndex = 0; lsbSprints.SelectedIndex = 0; ShowLog("Por favor forneça os dados de desempenho do(s) plantonista(s)."); } catch (Exception ex) { txbResult.Text = ex.Message; } }
private void BtnGenerate_Click(object sender, System.EventArgs e) { try { bool hasSharedSM = false; if (cbbPartners.SelectedItem.ToString() == house) { throw new Exception("Por favor ecolha um fornecedor para que o relatório seja gerado."); } BlockFields(true); txbResult.Text = "Processando..."; //realizar os calculos e ajustar dados finais foreach (var sprint in sprintsDevList) { //DEV int sprintDays = (sprint.Range.EndDate - sprint.Range.IniDate).Days; PrincipalTO.SetDevPresence(sprint.Contracts, sprintDays, sprint.AdaptaionSprint); FornecedorDTO selectedPartner = configXml.Partners.Find(p => p.Name == cbbPartners.SelectedItem.ToString()); double teamSize = PrincipalTO.CalcTeamSize(sprint, selectedPartner); sprint.TeamSize = teamSize; if (sprint.AdaptaionSprint) { sprint.AcceptedPointsExpenses *= (int)teamSize; } PrincipalTO.CalcPointsPerTeamMember(sprint); //SM if (sprintsSmList != null) { var smSprint = sprintsSmList.Find(s => s.Range.Name == sprint.Range.Name); smSprint.TeamSize = teamSize; smSprint.EmployeesCount = 1; } } //chamar a geracao dos relatorios if (fluxo == UtilDTO.NAVIGATION.VARIOS_RELATORIOS) { foreach (var partner in configXml.Partners) { //(TODO) Melhorar um dia if (partner.Name == "Influir") { partner.BillingType = UtilDTO.BILLING_TYPE.UST_HORA; } //SM_MEDIA nao será gerado nesse fluxo if (partner.Contracts.Any(contract => contract.Name != UtilDTO.CONTRACTS.SM_FIXO.ToString() && contract.Name != UtilDTO.CONTRACTS.SM_MEDIA.ToString())) { PrincipalTO.CreateDevDoc(configXml, partner, outputDocPath, sprintsDevList); } if (partner.Contracts.Any(contract => contract.Name == UtilDTO.CONTRACTS.SM_MEDIA.ToString())) { hasSharedSM = true; } if (partner.Contracts.Any(contract => contract.Name == UtilDTO.CONTRACTS.SM_FIXO.ToString())) { PrincipalTO.CreateSmDoc(configXml, partner, outputDocPath, sprintsSmList); } } } else { var selectedPartner = configXml.Partners.Find(partner => partner.Name == cbbPartners.SelectedItem.ToString()); PrincipalTO.CreateDevDoc(configXml, selectedPartner, outputDocPath, sprintsDevList); } txbResult.Text = $"Arquivos gerados na pasta {outputDocPath}"; if (hasSharedSM) { txbResult.AppendText("\n\nRelatório para SM compartilhado deve ser gerado avulso pelo menu correspondente."); } btnOpenDestinationFolder.Enabled = true; } catch (Exception ex) { txbResult.Text = ex.Message; BlockFields(false); } }