private void FormateAct()
        {
            if (ReconcilationsList.Count > 0)
            {
                // Variables info
                string path         = "";
                string templateFile = "";
                string templatePath = @"\\192.168.11.5\Archive\Templates\ForAll\ReconcilationAct.docx";

                // Get path to save template
                try {
                    path = Service.GetDirectory().FullName;
                } catch { path = ""; }

                if (!string.IsNullOrEmpty(path))
                {
                    // Get template file
                    templateFile = path + "\\Акт сверки для компании " + SelectedSupplier.companyName.Replace("\"", "'") + " за " + EndDate.ToShortDateString() + ".docx";

                    if (Service.CopyFile(templatePath, templateFile, true))
                    {
                        // Convert info
                        Broker broker = new Broker()
                        {
                            Name       = SelectedBroker.name,
                            Requisites = SelectedBroker.company.bin
                        };

                        Supplier supplier = new Supplier()
                        {
                            Name = SelectedSupplier.companyName,
                            BIN  = SelectedSupplier.companyBin
                        };

                        // Fill template file with info
                        try {
                            ReconcilationActService.FormateAct(StartDate, EndDate, broker, supplier, ReconcilationsList, templateFile);

                            // Open folder with file
                            FolderExplorer.OpenFolder(path + "\\");
                        } catch (Exception ex) { MessagesService.Show("Оповещение", "Произошла ошибка во время формирования акта\n" + ex.ToString()); }
                    }
                    else
                    {
                        MessagesService.Show("Оповещение", "Произошла ошибка во время копирования шаблона");
                    }
                }
            }
            else
            {
                MessagesService.Show("Оповещение", "Нет данных для формирования");
            }
        }
        private void FinalReportAllPLMT()
        {
            // Variables info
            string path         = "";
            string templateFile = "";
            string templatePath = @"\\192.168.11.5\Archive\Templates\ForAll\FinalReportPolyMetall.xlsx";

            // Get path to save template
            try {
                path = Service.GetDirectory().FullName;
            } catch { path = ""; }

            if (!string.IsNullOrEmpty(path))
            {
                // Get template file
                templateFile = path + "\\Отчет по прошедшим с " + StartDate.ToShortDateString() + " по " + EndDate.ToShortDateString() + ".xlsx";

                if (Service.CopyFile(templatePath, templateFile, true))
                {
                    // Get info from base
                    try {
                        var finalReportPlmtl = dataManager.GetFinalReportPlmtl(StartDate, EndDate);

                        if (finalReportPlmtl != null && finalReportPlmtl.Count > 0)
                        {
                            // Create report document
                            TechSpecReportService.CreateDocument(finalReportPlmtl, templateFile);
                            // Open folder with file
                            FolderExplorer.OpenFolder(path + "\\");
                        }
                        else
                        {
                            Service.DeleteFile(templateFile);
                            MessagesService.Show("Оповещение", "На эти даты записей нет");
                        }
                    } catch (Exception ex) { MessagesService.Show("Оповещение", "Произошла ошибка во время формирования отчета\n" + ex.ToString()); }
                }
                else
                {
                    MessagesService.Show("Оповещение", "Произошла ошибка во время копирования шаблона");
                }
            }
        }
        private void SaveInExcel()
        {
            if (DealNumbersList.Count > 0)
            {
                // Variables info
                string path         = "";
                string templateFile = "";
                string templatePath = @"\\192.168.11.5\Archive\Templates\ForAll\FinalReport.xlsx";

                // Get path to save template
                try {
                    path = Service.GetDirectory().FullName;
                } catch { path = ""; }

                if (!string.IsNullOrEmpty(path))
                {
                    // Get template file
                    templateFile = path + "\\Финальный отчет с " + FromDate.ToShortDateString() + " по " + ToDate.ToShortDateString() + ".xlsx";

                    if (Service.CopyFile(templatePath, templateFile, true))
                    {
                        // Fill template file with info
                        try {
                            FinalReportService.FormateDocument(templateFile, DealNumbersList);

                            // Open folder with file
                            FolderExplorer.OpenFolder(path + "\\");
                        } catch (Exception ex) { MessagesService.Show("Оповещение", "Произошла ошибка во время формирования отчета\n" + ex.ToString()); }
                    }
                    else
                    {
                        MessagesService.Show("Оповещение", "Произошла ошибка во время копирования шаблона");
                    }
                }
            }
            else
            {
                MessagesService.Show("Оповещение", "Нет данных для формирования");
            }
        }
        private void TechSpecReport(int type)
        {
            // Check for info for choosed data
            var lotExtended = DataBaseClient.ReadLotsExtended(StartDate, EndDate);

            if (lotExtended != null && lotExtended.Count > 0)
            {
                // Variables info
                string path         = "";
                string templateFile = "";
                string templatePath = @"\\192.168.11.5\Archive\Templates\ETS\TechSpecReport.xlsx";

                // Get path to save template
                try {
                    path = Service.GetDirectory().FullName;
                } catch { path = ""; }

                if (!string.IsNullOrEmpty(path))
                {
                    // Get template file
                    templateFile = path + "\\Отчет по тех. спец. с " + StartDate.ToShortDateString() + " по " + EndDate.ToShortDateString() + ".xlsx";

                    if (Service.CopyFile(templatePath, templateFile, true))
                    {
                        // Fill template file with info
                        try {
                            // Convert EF to BO
                            var techSpecReports = DataBaseClient.ReadTechSpecReport(1, StartDate, EndDate, new List <int>()
                            {
                                4
                            }, type == 1 ? new List <int>()
                            {
                                2
                            } : new List <int>()
                            {
                                2, 3, 4
                            });

                            if (techSpecReports != null && techSpecReports.Count > 1)
                            {
                                // Create report document
                                TechSpecReportService.CreateDocument(techSpecReports, templateFile);

                                // Open folder with file
                                FolderExplorer.OpenFolder(path + "\\");
                            }
                            else
                            {
                                MessagesService.Show("Оповещение", "На эти даты записей нет");
                            }
                        } catch (Exception ex) { MessagesService.Show("Оповещение", "Произошла ошибка во время формирования отчета\n" + ex.ToString()); }
                    }
                    else
                    {
                        MessagesService.Show("Оповещение", "Произошла ошибка во время копирования шаблона");
                    }
                }
            }
            else
            {
                MessagesService.Show("Оповещение", "Нет данных для формирования");
            }
        }
Esempio n. 5
0
        private void FormateTransfer()
        {
            // Check for auctions in selected date
            var procuratories = DataBaseClient.ReadProcuratories(FormateDate);

            var supplierOrders = DataBaseClient.ReadSupplierOrders().Where(s => s.auction.siteid == 4 && s.auction.date == FormateDate && s.supplierid != 3 && s.supplierid != 27 && s.supplierid != 354 && s.supplierid != 384 && s.supplierid != 385).ToList();

            if (procuratories != null && procuratories.Count() > 0)
            {
                // Set folder for files
                try
                {
                    path = Service.GetDirectory().FullName;
                }
                catch { path = ""; }

                if (!string.IsNullOrEmpty(path))
                {
                    for (var iBroker = 1; iBroker <= 4; iBroker++)
                    {
                        // Get template & copy them
                        if (supplierOrders.Where(s => s.contract.brokerid == iBroker).Count() > 0)
                        {
                            templateFile = path + "\\" + "Перевод в КЦ по ТОО " + (iBroker == 1 ? "'Альта и К'" : iBroker == 2 ? "'Корунд-777'" : iBroker == 3 ? "'Альтаир-Нур'" : "'Ак Алтын Ко'") + " для даты аукциона " + FormateDate.ToShortDateString() + ".docx";

                            if (Service.CopyFile(templatePath + "MoneyTransfer.docx", templateFile, true))
                            {
                                // Convert EF to BO
                                List <MoneyTransferList> moneyTransferList = new List <MoneyTransferList>();

                                var supplierJournal = DataBaseClient.ReadSuppliersJournals();
                                List <ClearingCountingEF> clearingCountingLst = new List <ClearingCountingEF>();

                                foreach (var item in supplierOrders.Where(s => s.contract.brokerid == iBroker))
                                {
                                    foreach (var subItem in procuratories.Where(p => p.supplierid == item.supplierid && p.auctionid == item.auctionid))
                                    {
                                        try
                                        {
                                            moneyTransferList.Add(new MoneyTransferList()
                                            {
                                                fromCompany = iBroker == 1 ? "altaik" : iBroker == 2 ? "korund" : iBroker == 3 ? "alta008" : "akaltko",
                                                toCompany   = supplierJournal.FirstOrDefault(s => s.supplierid == item.supplierid && s.brokerid == iBroker).code,
                                                lotNumber   = subItem.lot.number,
                                                sum         = (subItem.lot.sum / 100 * Convert.ToDecimal(0.1)).ToString()
                                            });

                                            //
                                            clearingCountingLst.Add(new ClearingCountingEF()
                                            {
                                                brokerid       = iBroker,
                                                fromsupplierid = iBroker == 1 ? 354 : iBroker == 2 ? 354 : iBroker == 3 ? 27 : 384,
                                                tosupplierid   = (int)subItem.supplierid,
                                                lotid          = (int)subItem.lotid,
                                                transaction    = subItem.lot.sum / 100 * Convert.ToDecimal(0.1),
                                                createdate     = DateTime.Now,
                                                statusid       = 9
                                            });

                                            // Put records in base

                                            /*if(DataBaseClient.CreateClearingCounting(clearingCounting) == 0) {
                                             *  MessagesService.Show("Заявление об изменении денежных средств", "Произошла ошибка при занесении данных в базу");
                                             *  AppJournal.Write("MoneyTransfer", "Fault when create record in base", true);
                                             * }*/
                                        }
                                        catch { }
                                    }
                                }

                                // Save into data base
                                foreach (var item in clearingCountingLst)
                                {
                                    // Check for exist
                                    var searchItem = DataBaseClient.ReadClearingCounting(item.brokerid, item.fromsupplierid, item.tosupplierid, item.lotid);

                                    // Save if not or remove old and create new record
                                    if (searchItem != null)
                                    { // Update
                                        DataBaseClient.UpdateClearingCounting(item.id, item.transaction);
                                    }
                                    else
                                    { // New
                                        if (DataBaseClient.CreateClearingCounting(item) == 0)
                                        {
                                            MessagesService.Show("Заявление об изменении денежных средств", "Произошла ошибка при занесении данных в базу");
                                            AppJournal.Write("MoneyTransfer", "Fault when create record in base", true);
                                        }
                                    }
                                }
                                //

                                // Formate file
                                MoneyTransferService.CreateDocument(templateFile, (iBroker == 1 ? "ТОО 'Альта и К'" : iBroker == 2 ? "ТОО 'Корунд-777'" : iBroker == 3 ? "ТОО 'Альтаир-Нур'" : "ТОО 'Ак Алтын Ко'"), moneyTransferList);
                            }
                        }
                    }
                }

                // Open folder
                FolderExplorer.OpenFolder(path + "\\");

                /*// Get templates & copy to auction directory
                 * var docMoneyTransferReq = GetDocumentRequisites("Заявление в КЦ №" + Auction.number.Replace("/", "_") + " (c " + Order.Auction.SupplierOrders[0].BrokerCode + " на " + Order.Auction.SupplierOrders[0].Code + ").docx", DocumentTypeEnum.MoneyTransfer);
                 * var moneyTransferTemplateFile = archiveManager.GetTemplate(docMoneyTransferReq, DocumentTemplateEnum.MoneyTransfer);
                 *
                 * // Get transaction sum
                 * var transactionSum = Order.Auction.Lots[0].Sum / 100 * Convert.ToDecimal(0.1);
                 *
                 * // Formate money transfer document & open folder with new document
                 * if(MoneyTransferService.CreateDocument(Order, moneyTransferTemplateFile, transactionSum)) {
                 *  OpenFolder();
                 *
                 *  // Put records in base
                 *  ClearingCountingEF clearingCounting = new ClearingCountingEF() {
                 *      brokerid = (int)SelectedSupplierOrder.contract.brokerid,
                 *      fromsupplierid = DataBaseClient.ReadSupplier(SelectedSupplierOrder.contract.broker.companyId).id,
                 *      tosupplierid = (int)SelectedSupplierOrder.supplierid,
                 *      lotid = SelectedLot.id,
                 *      transaction = transactionSum,
                 *      createdate = DateTime.Now,
                 *      statusid = 9
                 *  };
                 *
                 *  if(DataBaseClient.CreateClearingCounting(clearingCounting) == 0) {
                 *      MessagesService.Show("Заявление об изменении денежных средств", "Произошла ошибка при занесении данных в базу");
                 *      AppJournal.Write("MoneyTransfer", "Fault when create record in base", true);
                 *  }
                 * } else MessagesService.Show("Заявление об изменении денежных средств", "Произошла ошибка при формировании заявления");*/
                //
            }
            else
            {
                MessagesService.Show("Оповещение", "На эту дату нет аукционов или не созданы поручения");
            }
        }
        private void Print(int mode)
        {
            // Check for selected and for count
            if (SelectedListServ != null && SelectedListServ.envelopcount > 1)
            {
                // Get path to save template
                try
                {
                    path = Service.GetDirectory().FullName;
                }
                catch { path = ""; }

                if (!string.IsNullOrEmpty(path))
                {
                    // Get template file
                    templateFile = path + (mode == 1 ? "\\Конверты №" : mode == 2 ? "\\Уведомления №" : "\\Почтовый реестр №") + SelectedListServ.number + ".xlsx";

                    if (Service.CopyFile(templatePath + (mode == 1 ? "Envelop.xlsx" : mode == 2 ? "Notification.xlsx" : "Registral.xlsx"), templateFile, true))
                    {
                        // Convert info
                        List <PostRegister> postRegister = new List <PostRegister>();

                        foreach (var item in EnvelopsList)
                        {
                            postRegister.Add(new PostRegister()
                            {
                                name    = item.company == null ? "" : item.company,
                                index   = item.index == null ? "" : item.index,
                                address = item.address == null ? "" : item.address,
                                phones  = item.phones == null ? "" : item.phones,
                                code    = item.code == null ? "" : item.code
                            });
                        }

                        var brokerItem = DataBaseClient.ReadBrokers().FirstOrDefault(b => b.id == SelectedListServ.brokerid);

                        if (brokerItem != null)
                        {
                            Broker broker = new Broker();

                            broker.Name    = SelectedListServ.broker == null ? "" : SelectedListServ.broker;
                            broker.Index   = brokerItem.company.postcode == null ? "" : brokerItem.company.postcode;
                            broker.Address = brokerItem.company.addressactual == null ? "" : brokerItem.company.addressactual;
                            broker.Phones  = brokerItem.company.telephone == null ? "" : brokerItem.company.telephone;

                            // Formate document
                            try
                            {
                                PostRegisterService.CreateDocument(postRegister, templateFile, mode, broker);
                                FolderExplorer.OpenFolder(path + "\\");
                            }
                            catch (Exception) { MessagesService.Show("Оповещение", "во время формирования произошла ошибка"); }
                        }
                        else
                        {
                            MessagesService.Show("ОШИБКА", "Не найдены данные брокера");
                        }
                    }
                    else
                    {
                        MessagesService.Show("Оповещение", "Произошла ошибка во время копирования файла");
                    }
                }
            }
            else
            {
                MessagesService.Show("Оповещение", "Не выбран конверт или он пуст");
            }
        }