Esempio n. 1
0
    protected void uxCustomerImportButton_Click(object sender, EventArgs e)
    {
        uxImportCustomerMessagePanel.Controls.Clear();
        string localFilePath = Server.MapPath("~/" + uxCustomerCsvFileNameText.Text.Trim());

        if (!File.Exists(localFilePath))
        {
            Label label = new Label();
            label.ForeColor = Color.Red;
            label.Text      = "File not found.";
            uxImportCustomerMessagePanel.Controls.Add(label);
            return;
        }

        CustomerImporter     importer = new CustomerImporter();
        CustomerImportStatus status   = new CustomerImportStatus();
        TimeSpan             timeDiff;

        switch (uxCustomerImportModeRadioList.SelectedValue)
        {
        case "Overwrite":
            status = importer.ImportCustomerOverWrite(
                "~/" + uxCustomerCsvFileNameText.Text.Trim(), out timeDiff);
            UpdateImportMessage(status, uxImportCustomerMessagePanel, true);
            UpdateTimeMessage(timeDiff, uxImportCustomerMessagePanel);
            break;

        default: break;
        }

        AdminUtilities.ClearAllCache();
    }
Esempio n. 2
0
    private void UpdateImportMessage(CustomerImportStatus status, Panel uxMessagePanel, bool isImportCustomer)
    {
        switch (status.Status)
        {
        case CustomerImportStatus.ErrorStatus.Success:
            Label successlabel = new Label();
            successlabel.ForeColor = Color.Blue;
            if (isImportCustomer)
            {
                successlabel.Text = "<b>Import finished successfully!</b><br />" +
                                    status.ImportedCount + " row(s) imported<br />" +
                                    status.UpdatedCount + " row(s) updated<br />" +
                                    status.ErrorCount + " error(s)<br />";
            }
            else
            {
                successlabel.Text = "<b>Import finished successfully!</b><br />" +
                                    status.ImportedCount + " row(s) imported<br />" +
                                    status.UpdatedCount + " row(s) updated<br />" +
                                    status.ErrorCount + " error(s)<br />";
            }
            uxMessagePanel.Controls.Add(successlabel);
            uxMessagePanel.CssClass = "mgl30";
            break;

        case CustomerImportStatus.ErrorStatus.DoneWithErrors:
            AddErrorMessage(status, uxMessagePanel, isImportCustomer);
            break;

        case CustomerImportStatus.ErrorStatus.Fatal:
            AddFatalErrorMessage(status, uxMessagePanel);
            break;
        }
    }
Esempio n. 3
0
    private void AddCustomerFieldErrorMessage(CustomerImportStatus status, Panel uxMessagePanel)
    {
        Label label = new Label();

        label.ForeColor = Color.FromArgb(153, 0, 255);
        label.Text      = status.FieldError + "<br />";
        if (label.Text.Trim() != "<br />")
        {
            uxMessagePanel.Controls.Add(label);
        }
    }
Esempio n. 4
0
    private void AddFatalErrorMessage(CustomerImportStatus status, Panel uxMessagePanel)
    {
        Label label = new Label();

        label.ForeColor = Color.Red;
        label.Text      = status.ErrorMessage + "<br />";
        if (label.Text.Trim() != "<br />")
        {
            uxMessagePanel.Controls.Add(label);
        }
    }
Esempio n. 5
0
    private void AddShippingMessageHeader(CustomerImportStatus status, Panel uxMessagePanel)
    {
        Label label = new Label();

        label.ForeColor = Color.Red;
        label.Text      = "<b>Import finished with errors.</b><br />" +
                          status.ImportedCount + " row(s) imported<br />" +
                          status.SkippedCount + " row(s) skipped<br />" +
                          status.ErrorCount + " error(s)" + "<br /><br />";
        uxMessagePanel.Controls.Add(label);
        uxMessagePanel.CssClass = "mgl30";
    }
Esempio n. 6
0
 private void AddErrorMessage(CustomerImportStatus status, Panel uxMessagePanel, bool isImportCustomer)
 {
     if (isImportCustomer)
     {
         AddCustomerMessageHeader(status, uxMessagePanel);
         AddOtherErrorMessage(status, uxMessagePanel);
         AddCustomerFieldErrorMessage(status, uxMessagePanel);
     }
     else
     {
         AddShippingMessageHeader(status, uxMessagePanel);
         AddOtherErrorMessage(status, uxMessagePanel);
         AddSkippedErrorMessage(status, uxMessagePanel);
         AddCustomerNotFoundError(status, uxMessagePanel);
         AddShippingFieldErrorMessage(status, uxMessagePanel);
     }
 }