Exemplo n.º 1
0
        private void button_ok_Click(object sender, EventArgs e)
        {
            var address = MongoRepositoryAddresses.Get(textBox_street.Text, textBox_house.Text, textBox_building.Text,
                                                       textBox_apartment.Text);

            if (address == null)
            {
                MessageBox.Show("Адрес не занесен в базу!");
                return;
            }

            var orgEvent = new OrgEvent
            {
                Id            = OrgEvent?.Id ?? Guid.NewGuid(),
                EventType     = GetEventType(),
                CounterType   = GetCounterType(),
                AddressId     = address.Id,
                DateTime      = dateTimePicker_date.Value.Ticks,
                ImplementerId = ((ComboBoxItem)comboBox_implementer.SelectedItem).HiddenValue,
                Place         = string.IsNullOrEmpty(textBox_place.Text) ? null : textBox_place.Text,
                Count         = Convert.ToDecimal(textBox_count.Text)
            };

            MongoRepositoryOrgEvent.Upsert(orgEvent);

            Close();
        }
Exemplo n.º 2
0
        private void button_ok_Click(object sender, EventArgs e)
        {
            //var startDate = dateTimePicker1.Value.DateTime;
            //var endDate = dateTimePicker2.Value.DateTime;

            var startTicks = dateTimePicker1.Value.Date.Ticks;
            var endTicks   = dateTimePicker2.Value.Date.AddDays(1).Ticks;

            var events = MongoRepositoryOrgEvent.GetByDate(startTicks, endTicks, new List <EventType> {
                EventType.DISASSEMBLY, EventType.INSTALL
            });
            var addressIdList = events.Select(s => s.AddressId).Distinct().ToList();
            var addressList   = MongoRepositoryAddresses.Get(addressIdList);

            var disassemblyEventList = events.Where(w => w.EventType == EventType.DISASSEMBLY).ToList();
            var installEventList     = events.Where(w => w.EventType == EventType.INSTALL).ToList();

            var result = new List <Disassembly>();

            foreach (var dis in disassemblyEventList)
            {
                var address = addressList.First(f => f.Id == dis.AddressId);
                var install = installEventList.First(w => w.AddressId == dis.AddressId && w.CounterType == dis.CounterType);

                var disassembly = new Disassembly
                {
                    Date             = dis.DateTime.ToString("dd.MM.yyyy"),
                    Address          = address.Street + " " + address.House + " " + address.Building + " " + address.Apartment,
                    CountDisassembly = dis.Count,
                    CountInstall     = install.Count
                };
                result.Add(disassembly);
            }

            /*  var disList = new List<Disassembly>();
             * disList.Add(new Disassembly
             * {
             *    Date = "10.12.2017",
             *    Address = "ул. Репина",
             *    CountDisassembly = 202103,
             *    CountInstall = 123
             * });
             * disList.Add(new Disassembly
             * {
             *    Date = "10.12.2018",
             *    Address = "ул. Филатова",
             *    CountDisassembly = 25553,
             *    CountInstall = 1
             * }); */

            Export(result);



            Close();
        }
Exemplo n.º 3
0
        private void button_update_Click(object sender, EventArgs e)
        {
            int             selectedrowindex = dataGridView1.SelectedCells[0].RowIndex;
            DataGridViewRow selectedRow      = dataGridView1.Rows[selectedrowindex];
            string          a          = selectedRow.Cells["Id"].Value.ToString();
            var             address    = MongoRepositoryAddresses.Get(Guid.Parse(a));
            var             peopleList = MongoRepositoryPeople.GetByAddressId(Guid.Parse(a));

            new AddressForm(address, peopleList).ShowDialog();
        }
Exemplo n.º 4
0
        private void button_update_Click(object sender, EventArgs e)
        {
            int             selectedrowindex = dataGridView1.SelectedCells[0].RowIndex;
            DataGridViewRow selectedRow      = dataGridView1.Rows[selectedrowindex];
            string          a        = selectedRow.Cells["Id"].Value.ToString();
            var             orgEvent = MongoRepositoryOrgEvent.Get(Guid.Parse(a));

            Address address = null;

            if (orgEvent != null)
            {
                address = MongoRepositoryAddresses.Get(orgEvent.AddressId);
            }

            new OrgEventForm(orgEvent, address).ShowDialog();
        }
Exemplo n.º 5
0
        private void button_ok_Click(object sender, EventArgs e)
        {
            var startTicks = dateTimePicker_start.Value.Date.Ticks;
            var endTicks   = dateTimePicker_end.Value.Date.AddDays(1).Ticks;
            var eventTypes = new List <EventType> {
                EventType.INSTALL
            };


            var eventList     = MongoRepositoryOrgEvent.GetByDate(startTicks, endTicks, eventTypes);
            var addressIdList = eventList.Select(s => s.AddressId).Distinct().ToList();
            var addressList   = MongoRepositoryAddresses.Get(addressIdList);


            object fileName = Path.Combine(Application.StartupPath, "Templates\\template_acceptance_acts.doc");

            Microsoft.Office.Interop.Word.Application wordApp = new Microsoft.Office.Interop.Word.Application {
                Visible = true
            };
            Microsoft.Office.Interop.Word.Document aDoc = wordApp.Documents.Open(fileName, ReadOnly: false, Visible: true);
            aDoc.Activate();


            FindAndReplace(wordApp, "{date}", DateTime.Today.ToString("D"));
            object missing = System.Reflection.Missing.Value;

            for (int i = 0; i < eventList.Count; i++)
            {
                var address = addressList.First(w => w.Id == eventList[i].AddressId);

                var counterType = string.Empty;
                switch (eventList[i].CounterType)
                {
                case CounterType.COLD:
                    counterType = "ХВС";
                    break;

                case CounterType.HOT:
                    counterType = "ГВС";
                    break;

                case CounterType.ELECTRO:
                    counterType = "Электр.";
                    break;
                }

                aDoc.Tables[1].Rows.Add(ref missing);
                aDoc.Tables[1].Rows[i + 4].Range.Bold      = 0;
                aDoc.Tables[1].Rows[i + 4].Range.Font.Size = 10;


                aDoc.Tables[1].Rows[i + 4].Cells[1].Range.Text = address.Street;
                aDoc.Tables[1].Rows[i + 4].Cells[2].Range.Text = address.House;
                aDoc.Tables[1].Rows[i + 4].Cells[3].Range.Text = address.Apartment;
                aDoc.Tables[1].Rows[i + 4].Cells[4].Range.Text = new DateTime(eventList[i].DateTime).ToString("D");
                aDoc.Tables[1].Rows[i + 4].Cells[5].Range.Text = counterType;
                aDoc.Tables[1].Rows[i + 4].Cells[6].Range.Text = eventList[i].Place;
            }



            Close();
        }
Exemplo n.º 6
0
        private void Export_revision(List <Verification> verificationList, List <OrgEvent> verificList)
        {
            Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();
            Workbook   xlWorkBook  = xlApp.Workbooks.Open(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Templates\\template_verification_list.xls"), 0, true, 5, "", "", true, XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
            _Worksheet xlWorksheet = (_Worksheet)xlWorkBook.Sheets[1];

            int startRow = 5;

            progressBar1.Minimum = 0;
            progressBar1.Value   = 0;
            progressBar1.Maximum = verificationList.Count + verificList.Count;

            label_wait.Text = "Запись данных в файл...";
            foreach (var verification in verificationList)
            {
                var start     = startRow;
                var end       = startRow + verification.Counters.Count - 1;
                var startCell = xlWorksheet.Cells[start, 1];
                var endCell   = xlWorksheet.Cells[end, 1];
                var range     = xlWorksheet.Range[startCell, endCell];
                range.Merge(Type.Missing);
                range.Style.HorizontalAlignment = Microsoft.Office.Interop.Excel.XlHAlign.xlHAlignCenter;
                range.Style.VerticalAlignment   = Microsoft.Office.Interop.Excel.XlVAlign.xlVAlignCenter;
                range.Borders.LineStyle         = Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous;
                range.BorderAround();

                xlWorksheet.Cells[startRow, 1] = verification.Address;
                foreach (var counter in verification.Counters)
                {
                    xlWorksheet.Cells[startRow, 2] = counter.Name;
                    //  xlWorksheet.Cells[startRow, 3] = counter.StartCount.Insert(counter.StartCount.Length - 3, ",");
                    xlWorksheet.Cells[startRow, 3] = counter.StartCount.ToString();
                    xlWorksheet.Cells[startRow, 4] = counter.EndCount.ToString();
                    xlWorksheet.Cells[startRow, 5] = counter.StartDate;
                    xlWorksheet.Cells[startRow, 6] = counter.EndDate;
                    var rng = xlWorksheet.Range[xlWorksheet.Cells[startRow, 2], xlWorksheet.Cells[startRow, 6]];
                    rng.Borders.LineStyle = Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous;
                    startRow++;
                }
                progressBar1.PerformStep();
            }


            xlWorksheet = (_Worksheet)xlWorkBook.Sheets[2];
            startRow    = 5;
            foreach (var ver in verificList)
            {
                var start     = startRow;
                var end       = startRow + ver.Count;
                var startCell = xlWorksheet.Cells[start, 1];
                var endCell   = xlWorksheet.Cells[end, 1];
                var range     = xlWorksheet.Range[startCell, endCell];
                range.Style.HorizontalAlignment = Microsoft.Office.Interop.Excel.XlHAlign.xlHAlignCenter;
                range.Style.VerticalAlignment   = Microsoft.Office.Interop.Excel.XlVAlign.xlVAlignCenter;
                //range.Borders.LineStyle = XlLineStyle.xlContinuous;
                (range.Cells as Microsoft.Office.Interop.Excel.Range).ColumnWidth = 50;
                //range.BorderAround();

                var counterType = String.Empty;
                switch (ver.CounterType)
                {
                case Models.CounterType.COLD:
                    counterType = "Холодная вода";
                    break;

                case Models.CounterType.HOT:
                    counterType = "Горячая вода";
                    break;

                case Models.CounterType.ELECTRO:
                    counterType = "Электрический";
                    break;
                }

                xlWorksheet.Cells[startRow, 1] = "ул. " + MongoRepositoryAddresses.Get(ver.AddressId).Street + ", дом  "
                                                 + MongoRepositoryAddresses.Get(ver.AddressId).House + ", кв.  "
                                                 + MongoRepositoryAddresses.Get(ver.AddressId).Apartment;



                xlWorksheet.Cells[startRow, 2] = counterType;
                xlWorksheet.Cells[startRow, 3] = new DateTime(ver.DateTime).ToShortDateString();


                var rng = xlWorksheet.Range[xlWorksheet.Cells[startRow, 2], xlWorksheet.Cells[startRow, 3]];
                rng.Borders.LineStyle = Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous;
                startRow++;
                progressBar1.PerformStep();
            }
            label_wait.Text = "Документ построен.";
            xlApp.Visible   = true;
        }