Exemple #1
0
        private async void C01Func(int crudMode)
        {
            AppJournal.Write("Company", "Open C01 - " + (crudMode == 1 ? "New" : SelectedC01.code), true);

            if (Company.id != 0)
            {
                if (crudMode == 1)
                {
                    if (SelectedContract != null && SelectedContract.id > 0 && DataBaseClient.ReadSupplier(Company.id) != null)
                    {
                        if (DataBaseClient.ReadSuppliersJournals(DataBaseClient.ReadSupplier(Company.id).id, (int)SelectedContract.brokerid).Count() < 1)
                        {
                            string companyCode = await MessagesService.GetInput("Создание С01", "Введите код клиента:");

                            string serialNumber = await MessagesService.GetInput("Создание С01", "Введите номер (последним был - " + DataBaseClient.ReadSuppliersJournals((int)SelectedContract.brokerid, true).Max(s => s.serialnumber) + "):");

                            try
                            {
                                SuppliersJournalEF suppliersJournal = new SuppliersJournalEF()
                                {
                                    code         = companyCode,
                                    brokerid     = (int)SelectedContract.brokerid,
                                    regdate      = DateTime.Now,
                                    supplierid   = DataBaseClient.GetSupplierId(Company.id),
                                    serialnumber = Convert.ToInt32(serialNumber)
                                };

                                DataBaseClient.CreateSuppliersJournal(suppliersJournal);
                                JournalC01Service.CreateRecordInJournal(JournalC01Service.FillC01(SelectedContract.broker.company.bin, companyCode, Company.bin, Company.name, suppliersJournal.serialnumber.ToString()));
                                UpdateC01List();

                                OpenFolder();
                            }
                            catch (Exception ex)
                            {
                                MessagesService.Show("Создание С01", "При создании С01 произошла ошибка");
                                AppJournal.Write("Company", "Create c01 in db error :" + ex.ToString(), true);
                            }
                        }
                        else
                        {
                            MessagesService.Show("Создание С01", "По выбраному договору запись С01 существует");
                        }
                    }
                    else
                    {
                        MessagesService.Show("Создание С01", "Не выбран договор или компания не является поставщиком");
                    }
                }
                else
                {
                    if (SelectedC01 != null && SelectedC01.id > 0)
                    {
                        string companyCode = await MessagesService.GetInput("Обновление С01", "Введите новый код клиента:");

                        if (!string.IsNullOrEmpty(companyCode))
                        {
                            try
                            {
                                SelectedC01.code = companyCode;
                                DataBaseClient.UpdateSuppliersJournal(SelectedC01);
                                JournalC01Service.CreateRecordInJournal(JournalC01Service.FillC01(SelectedC01.broker.company.bin, SelectedC01.code, SelectedC01.supplier.company.bin, SelectedC01.supplier.company.name, SelectedC01.serialnumber.ToString()));
                            }
                            catch (Exception ex)
                            {
                                MessagesService.Show("Обновление С01", "При обновлении произошла ошибка");
                                AppJournal.Write("Company", "Update c01 in db error :" + ex.ToString(), true);
                            }
                        }
                    }
                    else
                    {
                        MessagesService.Show("Обновление С01", "Не выбрана запись С01");
                    }
                }
            }
            else
            {
                MessagesService.Show("Работа с С01", "Ваша компания не сохранена");
            }
        }