Example #1
0
        public void BindRates(ITemplateRates ratesTemplate, bool saveToState = true)
        {
            if (saveToState) SaveCurrentState();
            _currentRatesTemplate = ratesTemplate;
            _rates = GetRatesFromState(ratesTemplate);
            _additionalRates = GetAdditionalRatesFromState(ratesTemplate);

            BindGrid(gridRates, _rates);
            BindGrid(gridAdditionalRates, _additionalRates);

            if (gridRates.Columns.Count > 0)
                gridRates.Columns[0].Visible = false;
            if (gridAdditionalRates.Columns.Count > 0)
                gridAdditionalRates.Columns[0].Visible = false;
            EnsureUI();
        }
Example #2
0
        private List <RateValue> GetAdditionalRatesFromState(ITemplateRates ratesTemplate)
        {
            if (_state == null)
            {
                return(ratesTemplate.GetAdditionalStandardRates());
            }

            ITemplateRates currentTemplate =
                _state.FirstOrDefault(
                    template => template != null && template.Name == ratesTemplate.Name);

            if (currentTemplate == null)
            {
                return(ratesTemplate.GetAdditionalStandardRates());
            }

            return(currentTemplate.AdditionalRates);
        }
Example #3
0
        private void SaveCurrentState()
        {
            if (_currentRatesTemplate == null)
            {
                return;
            }
            if (_state == null)
            {
                _state = new List <TemplateRatesBase>();
            }
            ITemplateRates currentTemplate =
                _state.FirstOrDefault(
                    template => template != null && template.Name == _currentRatesTemplate.Name);

            if (currentTemplate != null)
            {
                _state.Remove((TemplateRatesBase)currentTemplate);
            }

            var resources = new UIResources(Settings.GetSavedCulture());

            _currentRatesTemplate.Rates.Clear();
            foreach (DataGridViewRow row  in gridRates.Rows)
            {
                _currentRatesTemplate.Rates.Add(new RateValue()
                {
                    ResourceToken = row.Cells[0].Value.ToString(), Type = resources.GetString(row.Cells[0].Value.ToString()), Rate = Convert.ToDecimal(row.Cells[2].Value)
                });
            }
            _currentRatesTemplate.AdditionalRates.Clear();
            foreach (DataGridViewRow row in gridAdditionalRates.Rows)
            {
                _currentRatesTemplate.AdditionalRates.Add(new RateValue()
                {
                    ResourceToken = row.Cells[0].Value.ToString(), Type = resources.GetString(row.Cells[0].Value.ToString()), Rate = Convert.ToDecimal(row.Cells[2].Value)
                });
            }
            _state.Add((TemplateRatesBase)_currentRatesTemplate);
            //add rates
        }
Example #4
0
        public void BindRates(ITemplateRates ratesTemplate, bool saveToState = true)
        {
            if (saveToState)
            {
                SaveCurrentState();
            }
            _currentRatesTemplate = ratesTemplate;
            _rates           = GetRatesFromState(ratesTemplate);
            _additionalRates = GetAdditionalRatesFromState(ratesTemplate);

            BindGrid(gridRates, _rates);
            BindGrid(gridAdditionalRates, _additionalRates);

            if (gridRates.Columns.Count > 0)
            {
                gridRates.Columns[0].Visible = false;
            }
            if (gridAdditionalRates.Columns.Count > 0)
            {
                gridAdditionalRates.Columns[0].Visible = false;
            }
            EnsureUI();
        }
Example #5
0
 public ProjectFile(ITemplateRates _template)
 {
     TemplateRates = _template;
     IsSummary     = false;
 }
Example #6
0
 public Project(String projectAnalyseFile, ITemplateRates template, ReportType reportType)
 {
     _template   = template;
     _reportType = reportType;
     PrepareFilesList(projectAnalyseFile);
 }
Example #7
0
 public ProjectFile(ITemplateRates _template)
 {
     TemplateRates = _template;
     IsSummary = false;
 }
Example #8
0
        private void btnGenerate_Click(object sender, EventArgs e)
        {
            if (!ckWord.Checked && !ckExcel.Checked && !ckClipboard.Checked)
            {
                return;
            }

            Settings.SaveRatesState(_rates.State);

            ITemplateRates currentSelectedTemplate = _rates.CurrentRatesTemplate;

            if (currentSelectedTemplate == null)
            {
                if (_rates == null || _rates.State == null)
                {
                    currentSelectedTemplate = new SimpleWordTemplate();
                }
                else
                {
                    currentSelectedTemplate = _rates.GetSimpleWordTemplateFromState();
                }
            }
            Project project = new Project(cmbLanguagePair.SelectedValue.ToString(),
                                          currentSelectedTemplate,
                                          cmbReportType.SelectedIndex == 0 ? ReportType.Detailed : ReportType.Summary);

            Customer customer = new Customer(
                txtCustomerName.SDLText,
                txtCustomerStreet.SDLText,
                txtCustomerCity.SDLText,
                txtCustomerState.SDLText,
                txtCustomerZip.SDLText,
                txtCustomerCountry.SDLText);

            //Settings.SaveCurrentCustomer(customer);
            bool emptyUser = String.IsNullOrEmpty(txtUserName.SDLText);
            User user      = new User()
            {
                Name       = emptyUser ? String.Empty : txtUserName.SDLText,
                Street     = emptyUser ? String.Empty : txtUserStreet.SDLText,
                City       = emptyUser ? String.Empty : txtUserCity.SDLText,
                State      = emptyUser ? String.Empty : txtUserState.SDLText,
                Zip        = emptyUser ? String.Empty : txtUserZip.SDLText,
                Country    = emptyUser ? String.Empty : txtUserCountry.SDLText,
                Phone      = emptyUser ? String.Empty : txtUserPhone.SDLText,
                Mobile     = emptyUser ? String.Empty : txtUserMobile.SDLText,
                Email      = emptyUser ? String.Empty : txtUserEmail.SDLText,
                Skype      = emptyUser ? String.Empty : txtUserSkype.SDLText,
                WebAddress = emptyUser ? String.Empty : txtUserWebAdress.SDLText,
                Twitter    = emptyUser ? String.Empty : txtUserTwitter.SDLText
            };

            Settings.SaveCurrentUser(user);
            UIResources resources = new UIResources(ddlLanguages.SelectedValue.ToString());

            if (ckClipboard.Checked)
            {
                project.GenerateClipboardData(customer, user);
                MessageBox.Show(resources.QuoteGeneratedClipboard, resources.Information, MessageBoxButtons.OK,
                                MessageBoxIcon.Information);
            }
            if (ckExcel.Checked)
            {
                saveFileDialog.FileName     = String.Empty;
                saveFileDialog.DefaultExt   = "xlsx";
                saveFileDialog.AddExtension = true;
                saveFileDialog.Filter       = @"Excel Document|*.xlsx";

                if (saveFileDialog.ShowDialog() == DialogResult.OK)
                {
                    String fileToSave = saveFileDialog.FileName;
                    String template   = ddlExcel.SelectedValue.ToString();

                    project.GenerateExcelData(customer, user, fileToSave, template);
                    MessageBox.Show(resources.QuoteGeneratedExcel, resources.Information, MessageBoxButtons.OK,
                                    MessageBoxIcon.Information);
                }
            }
            if (ckWord.Checked)
            {
                saveFileDialog.FileName     = String.Empty;
                saveFileDialog.DefaultExt   = "docx";
                saveFileDialog.AddExtension = true;
                saveFileDialog.Filter       = @"Word Document|*.docx";
                saveFileDialog.SupportMultiDottedExtensions = false;

                if (saveFileDialog.ShowDialog() == DialogResult.OK)
                {
                    String fileToSave = saveFileDialog.FileName;
                    String template   = ddlWord.SelectedValue.ToString();

                    project.GenerateWordData(customer, user, fileToSave, template);
                    MessageBox.Show(resources.QuoteGeneratedWord, resources.Information, MessageBoxButtons.OK,
                                    MessageBoxIcon.Information);
                }
            }
        }
Example #9
0
 public Project(String projectAnalyseFile, ITemplateRates template, ReportType reportType)
 {
     _template = template;
     _reportType = reportType;
     PrepareFilesList(projectAnalyseFile);
 }
Example #10
0
        private List<RateValue> GetAdditionalRatesFromState(ITemplateRates ratesTemplate)
        {
            if (_state == null)
                return ratesTemplate.GetAdditionalStandardRates();

            ITemplateRates currentTemplate =
                _state.FirstOrDefault(
                    template => template != null && template.Name == ratesTemplate.Name);
            if (currentTemplate == null)
                return ratesTemplate.GetAdditionalStandardRates();

            return currentTemplate.AdditionalRates;
        }