Exemple #1
0
        public static void Print(device dev)
        {
            try
            {
                //Если файл существует - затираем

                /* StreamWriter toFile = new StreamWriter("receipt.html", false, System.Text.Encoding.Default);
                 * List<string> bufSet = Settings.readSettings();
                 * toFile.Write("<!DOCTYPE HTML><html><body><b><font size =\"5\">\"" + bufSet[0] + "\"</font><br>т.&nbsp<font size =\"4\">" + bufSet[1] + "</font> <br>" + bufSet[2] + " <br>" + bufSet[3] + "<br> <br></b>");
                 * toFile.Close();
                 * aboutRepair(dev);
                 * termOfService();
                 * aboutRepair(dev); */

                List <string> bufSet   = Settings.readSettings();
                StringBuilder htmlText = new StringBuilder("<!DOCTYPE HTML><html><body><b><font size =\"5\">\"" + bufSet[0] + "\"</font><br>т.&nbsp<font size =\"4\">" + bufSet[1] + "</font> <br>" + bufSet[2] + " <br>" + bufSet[3] + "<br> <br></b>");
                AboutRepair(dev, htmlText);
                TermOfService(htmlText);
                AboutRepair(dev, htmlText);
                WebBrowser webBrowserForPrinting = new WebBrowser();
                webBrowserForPrinting.DocumentCompleted +=
                    new WebBrowserDocumentCompletedEventHandler(PrintDocument);
                webBrowserForPrinting.DocumentText = htmlText.ToString();
            }
            catch (Exception er)
            {
                System.Windows.MessageBox.Show(er.ToString() + Environment.NewLine + "Ошибка при печати документа");
            }
        }
Exemple #2
0
 public static void WriteToFile(device dev, int poz = -1)
 {
     try
     {
         using (FileStream toFile = new FileStream("repairs.txt", FileMode.Open))
         {
             byte[] textToByte;
             //Если не передано координат для записи
             if (poz == -1)
             {
                 toFile.Seek(0, SeekOrigin.End);
                 //Если уже есть записи - записать знак перехода на новую строку
                 if (toFile.Length > 0)
                 {
                     textToByte = System.Text.Encoding.Default.GetBytes(Environment.NewLine);
                     toFile.Write(textToByte, 0, textToByte.Length);
                 }
             }
             //Если переданы координаты для записи - установить курсор
             else
             {
                 toFile.Seek(poz, SeekOrigin.Begin);
             }
             //Записать объект в файл
             textToByte = System.Text.Encoding.Default.GetBytes(dev.ID + "| " + Convert.ToInt32(dev.Status) + "| " + dev.Type + "| " + dev.Manufact + "| " + dev.Model + "| " + dev.Break + "| " + dev.Phone + "| " + dev.Serial + "| " + dev.Komplekt + "| " + dev.External + "| " + dev.PrePay + "| " + dev.PreCost + "| " + dev.Client + "| " + dev.Date + "| " + dev.Cost + "| " + dev.Comment + "| " + dev.WhatIsDone + "~                                               ");
             toFile.Write(textToByte, 0, textToByte.Length);
         }
     }
     catch (Exception er)
     {
         System.Windows.MessageBox.Show(er.ToString() + Environment.NewLine + "Ошибка записи ремонта в файл");
     }
 }
Exemple #3
0
        public static List <device> ReadFromFile()
        {
            List <device> devList = new List <device>();

            try
            {
                //Если файла нет - создать
                if (!File.Exists("repairs.txt"))
                {
                    FileStream file = File.Create("repairs.txt");
                    file.Close();
                }
                //Иначе открываем файл
                else
                {
                    StreamReader fromFile = new StreamReader("repairs.txt", System.Text.Encoding.Default);
                    //Если файл пустой - закрываем без чтения
                    if (fromFile.Peek() == -1)
                    {
                        fromFile.Close();
                    }
                    //Если есть записи - считываем
                    else
                    {
                        const int length = 17;
                        int       y = 0;
                        string    bufLine, buf = "";
                        string[]  buffer = new string[17];
                        while ((bufLine = fromFile.ReadLine()) != null)
                        {
                            for (int i = 0; y < length; i++)
                            {
                                //Посимвольно считываем файл пока не встретим разделитель
                                if (bufLine[i] != '|' && bufLine[i] != '~')
                                {
                                    buf += bufLine[i];
                                }
                                //После встречи разделителя записываем объект в буферный массив
                                else
                                {
                                    //MessageBox.Show(buf);
                                    buffer[y++] = buf;
                                    buf         = "";
                                    if (bufLine[i] == '~')
                                    {
                                        y = length;
                                        break;
                                    }
                                    //Перепрыгиваем разделитель
                                    i++;
                                }
                            }
                            y = 0;
                            device bufObj = new device(buffer[0], buffer[1], buffer[2], buffer[3], buffer[4], buffer[5], buffer[6], buffer[7], buffer[8], buffer[9], buffer[10], buffer[11], buffer[12], buffer[13], buffer[14], buffer[15], buffer[16]);
                            //MessageBox.Show(bufObj.ID);
                            devList.Insert(0, bufObj);
                        }
                        fromFile.Close();
                    }
                }
            }
            catch (Exception er)
            {
                System.Windows.MessageBox.Show(er.ToString() + Environment.NewLine + "Ошибка считывания ремонтов из файла");
            }
            return(devList);
        }
Exemple #4
0
        // static void aboutRepair(device dev)
        static void AboutRepair(device dev, StringBuilder htmlText)
        {
            try
            {
                /* StreamWriter toFile = new StreamWriter("receipt.html", true, System.Text.Encoding.Default);
                 * toFile.Write("<table><tr><th><b>Квитанция о приеме оборудования на ремонт</b></th></tr></table>");
                 * toFile.Write("<table border =\"1\"><tr><td align =\"right\" width =\"20 %\"><b>Устройство</b></td><td>&nbsp;" + dev. Type + " " + dev. Manufact + " " + dev. Model + "</td></tr>");
                 * toFile.Write("<tr><td align =\"right\" width =\"20%\"><b>Серийный номер</b></td> <td>&nbsp;" + dev. Serial + " </td> </tr>");
                 * toFile.Write("<tr><td align =\"right\" width =\"20 %\"><b>Комплектность</b></td><td>&nbsp;" + dev. Komplekt + "</td></tr>");
                 * toFile.Write("<tr><td align =\"right\" width =\"20 %\"><b>Внешний вид</b></td><td>&nbsp;" + dev. External + "</td></tr>");
                 * toFile.Write("<tr><td align =\"right\" width =\"20 %\"><b>Предоплата</b></td><td>&nbsp;");
                 * if (dev. PrePay > 0)
                 * {
                 *  toFile.Write(dev.PrePay);
                 * }
                 * else
                 * {
                 *  toFile.WriteLine("Без предоплаты");
                 * }
                 * toFile.Write("</td></tr>");
                 * toFile.Write("<tr><td align =\"right\" width =\"20 %\"><b>Предварительная стоимость</b></td><td>&nbsp;");
                 * if (dev. PreCost > 0)
                 * {
                 *  toFile.WriteLine(dev. PreCost);
                 * }
                 * else
                 * {
                 *  toFile.WriteLine("После диагностики");
                 * }
                 * toFile.Write("</td></tr>");
                 * toFile.Write("<tr><td align =\"right\" width =\"20 %\"><b>Клиент</b></td><td>&nbsp;" + dev. Client + "</td></tr>");
                 * toFile.Write("<tr><td align =\"right\" width =\"20 %\"><b>Телефон клиента</b></td><td>&nbsp;" + dev. Phone + "</td></tr>");
                 * toFile.Write("<tr><td align =\"right\" width =\"20 %\"><b>Дата приема</b></td><td>&nbsp;" + dev. Date + "</td></tr>");
                 * toFile.WriteLine("<table><tr><th><b>Неисправность со слов клиента</b></th></tr></table>");
                 * toFile.WriteLine("<table border =\"1\"><tr align =\"center\"><td><br>" + dev. Break + "<br><br></td></tr></table>");
                 * toFile.Close(); */

                htmlText.Append("<table><tr><th><b>Квитанция о приеме оборудования на ремонт</b></th></tr></table>");
                htmlText.Append("<table border =\"1\"><tr><td align =\"right\" width =\"20 %\"><b>Устройство</b></td><td>&nbsp;" + dev.Type + " " + dev.Manufact + " " + dev.Model + "</td></tr>");
                htmlText.Append("<tr><td align =\"right\" width =\"20%\"><b>Серийный номер</b></td> <td>&nbsp;" + dev.Serial + " </td> </tr>");
                htmlText.Append("<tr><td align =\"right\" width =\"20 %\"><b>Комплектность</b></td><td>&nbsp;" + dev.Komplekt + "</td></tr>");
                htmlText.Append("<tr><td align =\"right\" width =\"20 %\"><b>Внешний вид</b></td><td>&nbsp;" + dev.External + "</td></tr>");
                htmlText.Append("<tr><td align =\"right\" width =\"20 %\"><b>Предоплата</b></td><td>&nbsp;");
                if (dev.PrePay > 0)
                {
                    htmlText.Append(dev.PrePay);
                }
                else
                {
                    htmlText.Append("Без предоплаты");
                }
                htmlText.Append("</td></tr>");
                htmlText.Append("<tr><td align =\"right\" width =\"20 %\"><b>Предварительная стоимость</b></td><td>&nbsp;");
                if (dev.PreCost > 0)
                {
                    htmlText.Append(dev.PreCost);
                }
                else
                {
                    htmlText.Append("После диагностики");
                }
                htmlText.Append("</td></tr>");
                htmlText.Append("<tr><td align =\"right\" width =\"20 %\"><b>Клиент</b></td><td>&nbsp;" + dev.Client + "</td></tr>");
                htmlText.Append("<tr><td align =\"right\" width =\"20 %\"><b>Телефон клиента</b></td><td>&nbsp;" + dev.Phone + "</td></tr>");
                htmlText.Append("<tr><td align =\"right\" width =\"20 %\"><b>Дата приема</b></td><td>&nbsp;" + dev.Date + "</td></tr>");
                htmlText.Append("<table><tr><th><b>Неисправность со слов клиента</b></th></tr></table>");
                htmlText.Append("<table border =\"1\"><tr align =\"center\"><td><br>" + dev.Break + "<br><br></td></tr></table>");
            }
            catch (Exception er)
            {
                System.Windows.MessageBox.Show(er.ToString() + Environment.NewLine + "Ошибка при создании квитанции (описание ремонта)");
            }
        }
Exemple #5
0
        public AddorChangeRepair(device obj, int index, bool trigger)
        {
            indexBuf = index;
            dev      = obj;
            try
            {
                InitializeComponent();
                //System.Windows.Input.Keyboard.Focus(TXclient.Text);
                TXclient.Focus();
                if (trigger)
                {
                    TXcost.Focus();
                    LabelClient.Visibility   = Visibility.Collapsed;
                    TXclient.Visibility      = Visibility.Collapsed;
                    LabelPhone.Visibility    = Visibility.Collapsed;
                    TXphone.Visibility       = Visibility.Collapsed;
                    LabelManufact.Visibility = Visibility.Collapsed;
                    TXmanufact.Visibility    = Visibility.Collapsed;
                    LabelModel.Visibility    = Visibility.Collapsed;
                    TXmodel.Visibility       = Visibility.Collapsed;
                    LabelSerial.Visibility   = Visibility.Collapsed;
                    TXserial.Visibility      = Visibility.Collapsed;
                    LabelBreak.Visibility    = Visibility.Collapsed;
                    TXbreak.Visibility       = Visibility.Collapsed;
                    LabelPrePay.Visibility   = Visibility.Collapsed;
                    TXprePay.Visibility      = Visibility.Collapsed;
                    LabelPreCost.Visibility  = Visibility.Collapsed;
                    TXpreCost.Visibility     = Visibility.Collapsed;
                    LabelType.Visibility     = Visibility.Collapsed;
                    TXtype.Visibility        = Visibility.Collapsed;
                    LabelExternal.Visibility = Visibility.Collapsed;
                    TXexternal.Visibility    = Visibility.Collapsed;
                    LabelKomplekt.Visibility = Visibility.Collapsed;
                    TXkomplekt.Visibility    = Visibility.Collapsed;

                    Add.Click += ClickSave;
                    Add.Click -= ClickChange;
                    Add.Click -= ClickAdd;
                }
                else
                {
                    TXclient.Text   = obj.Client;
                    TXphone.Text    = obj.Phone;
                    TXmanufact.Text = obj.Manufact;
                    TXmodel.Text    = obj.Model;
                    TXserial.Text   = obj.Serial;
                    TXbreak.Text    = obj.Break;
                    TXprePay.Text   = Convert.ToString(obj.PrePay);
                    TXpreCost.Text  = Convert.ToString(obj.PreCost);
                    TXcomment.Text  = obj.Comment;

                    TXmanufact.ItemsSource = readFromList("InManufact.txt");
                    TXbreak.ItemsSource    = readFromList("InBreak.txt");

                    Add.Click += ClickChange;
                    Add.Click -= ClickAdd;
                    Add.Click -= ClickSave;
                }

                TXcost.Text = Convert.ToString(obj.Cost);
            }
            catch (Exception er)
            {
                MessageBox.Show(er.ToString() + Environment.NewLine + "Ошибка в окне добавления ремонта");
            }
        }