Пример #1
0
        private void btnDelete_Click(object sender, EventArgs e)
        {
            using (DBCtx db = new DBCtx())
            {
                Counterparty counterparty = (from c in db.Counterparty
                                             where c.name == oldCounterparty.name && c.inn == oldCounterparty.inn && c.kpp == oldCounterparty.kpp
                                             select c).FirstOrDefault();
                if (counterparty == null)
                {
                    MessageBox.Show("При удалении покупателя или поставщика произошла ошибка, удаление отклонено", "Информация");
                    return;
                }

                counterparty.deleted = "Y";
                Logs log = new Logs();
                log.username = username;
                log.acttime  = DateTime.Now;
                log.action   = String.Format("Deleted counterparty: name - {0}, inn - {1}, kpp - {2}", counterparty.name, counterparty.inn, counterparty.kpp);
                db.Logs.Add(log);
                try
                {
                    db.SaveChanges();
                }
                catch (Exception)
                {
                    MessageBox.Show("Произошла ошибка, покупатель или поставщик не был удален", "Информация");
                    return;
                }

                MessageBox.Show("Покупатель или поставщик успешно удален из системы", "Информация");
                this.Close();
            }
        }
Пример #2
0
        public Add(string username)
        {
            InitializeComponent();

            this.username = username;
            this.dictionaryTableAdapter1.Fill(this.typeForCombobox.Dictionary);
            this.dictionaryTableAdapter.Fill(this.statusForCombobox.Dictionary);

            using (DBCtx db = new DBCtx())
            {
                Dictionary attr = (from d in db.Dictionary
                                   from e in db.Entity
                                   where d.entity_id == e.id && d.target == "STATUS" && d.deleted == null && e.name == "bid" && d.term_name == "Создан"
                                   select d).FirstOrDefault();

                if (attr == null)
                {
                    MessageBox.Show("Ошибка получения статуса заявки, не найдено \"Создан\"", "Информация");
                    this.Close();
                }

                cbStatus.SelectedIndex = cbStatus.FindStringExact(attr.term_name);
                bidNumber        = Guid.NewGuid().ToString();
                tbBidNumber.Text = bidNumber;
            }
        }
Пример #3
0
        private void btnCheck_Click(object sender, EventArgs e)
        {
            if (!fillCheck(true))
            {
                MessageBox.Show("Одно или несколько полей не заполнены", "Информация");
                return;
            }
            using (DBCtx db = new DBCtx())
            {
                string vendorCode = tbVendorCode.Text;
                string name       = tbName.Text;
                int    okei_id    = 0;
                int    type_id    = 0;
                int.TryParse(cbOKEI.SelectedValue.ToString(), out okei_id);
                int.TryParse(cbType.SelectedValue.ToString(), out type_id);
                if (okei_id == 0 || type_id == 0)
                {
                    MessageBox.Show("Ошибка выбора элемента списка", "Информация");
                    return;
                }

                Product product = (from p in db.Product
                                   where p.vendor_code == vendorCode && p.name == name && p.okei_id == okei_id && p.type_id == type_id && p.deleted == null
                                   select p).FirstOrDefault();
                if (product != null)
                {
                    MessageBox.Show("Присутствует в списке удаленных", "Информация");
                }
                else
                {
                    MessageBox.Show("Отсутствует в списке удаленных", "Информация");
                }
            }
        }
Пример #4
0
        private void btnRecovery_Click(object sender, EventArgs e)
        {
            if (!fillCheck(true))
            {
                MessageBox.Show("Одно или несколько полей не заполнены", "Информация");
                return;
            }
            using (DBCtx db = new DBCtx())
            {
                string vendorCode = tbVendorCode.Text;
                int    attr_id    = 0;
                int.TryParse(cbAttr.SelectedValue.ToString(), out attr_id);
                if (attr_id == 0)
                {
                    MessageBox.Show("Ошибка выбора элемента списка", "Информация");
                    return;
                }

                Product product = (from p in db.Product
                                   where p.vendor_code == vendorCode && p.deleted == null
                                   select p).FirstOrDefault();
                if (product == null)
                {
                    MessageBox.Show("Товар не найден, возможно он был удален", "Информация");
                    return;
                }

                ProductAttrs pa = (from _pa in db.ProductAttrs
                                   where _pa.product_id == _pa.product_id && _pa.attr_id == attr_id && _pa.deleted != null
                                   select _pa).FirstOrDefault();

                if (pa == null)
                {
                    MessageBox.Show("Отсутствует в списке удаленных", "Информация");
                    return;
                }

                pa.deleted = null;

                Logs log = new Logs();
                log.username = username;
                log.acttime  = DateTime.Now;
                log.action   = String.Format("Recovery product attribute: counterparty(vendorCode - {0}, name - {1}), attribute(attr - {2})",
                                             product.vendor_code, product.name, cbAttr.GetItemText(cbAttr.SelectedItem));
                db.Logs.Add(log);
                try
                {
                    db.SaveChanges();
                }
                catch (Exception)
                {
                    MessageBox.Show("Произошла ошибка, атрибут товара не был восстановлен", "Информация");
                    return;
                }

                MessageBox.Show("Атрибут товара успешно восстановлен в системе", "Информация");
                this.Close();
            }
        }
Пример #5
0
        private void btnRecovery_Click(object sender, EventArgs e)
        {
            if (!fillCheck(true))
            {
                MessageBox.Show("Одно или несколько полей не заполнены", "Информация");
                return;
            }
            using (DBCtx db = new DBCtx())
            {
                string inn     = tbINN.Text;
                int    attr_id = 0;
                int.TryParse(cbAttr.SelectedValue.ToString(), out attr_id);
                if (attr_id == 0)
                {
                    MessageBox.Show("Ошибка выбора элемента списка", "Информация");
                    return;
                }

                Counterparty counterparty = (from c in db.Counterparty
                                             where c.inn == inn && c.deleted == null
                                             select c).FirstOrDefault();
                if (counterparty == null)
                {
                    MessageBox.Show("Покупатель или поставщик не найден, возможно он был удален", "Информация");
                    return;
                }

                CounterpartyAttrs cpa = (from ca in db.CounterpartyAttrs
                                         where ca.counterparty_id == counterparty.id && ca.attr_id == attr_id && ca.deleted != null
                                         select ca).FirstOrDefault();

                if (cpa == null)
                {
                    MessageBox.Show("Отсутствует в списке удаленных", "Информация");
                    return;
                }

                cpa.deleted = null;

                Logs log = new Logs();
                log.username = username;
                log.acttime  = DateTime.Now;
                log.action   = String.Format("Recovery counterparty attribute: counterparty(name - {0}, inn - {1}, kpp - {2}), attribute(attr - {3})",
                                             counterparty.name, counterparty.inn, counterparty.kpp, cbAttr.GetItemText(cbAttr.SelectedItem));
                db.Logs.Add(log);
                try
                {
                    db.SaveChanges();
                }
                catch (Exception)
                {
                    MessageBox.Show("Произошла ошибка, атрибут покупателя или поставщика не был восстановлен", "Информация");
                    return;
                }

                MessageBox.Show("Атрибут покупателя или поставщика успешно восстановлен в системе", "Информация");
                this.Close();
            }
        }
Пример #6
0
        /* Delete from SGAlarmInfo */
        public bool DeleteAlarmInfo(SGAlarmData alarmData)
        {
            // Delete
            DBCtx.Remove(alarmData);
            DBCtx.SaveChanges();
            Log.Information("Delete the SGAlarmData, {AlarmData}", alarmData);

            return(true);
        }
Пример #7
0
        /* Delete from SGNotiInfo */
        public bool DeleteNotiInfo(SGNotiData notiData)
        {
            // Delete
            DBCtx.Remove(notiData);
            DBCtx.SaveChanges();
            Log.Information("Delete the SGNotiData, {NotiData}", notiData);

            return(true);
        }
Пример #8
0
        private void btnDelete_Click(object sender, EventArgs e)
        {
            using (DBCtx db = new DBCtx())
            {
                Dictionary okei_dict = (from _d in db.Dictionary
                                        from _e in db.Entity
                                        where _d.entity_id == _e.id && _d.term_name == okei && _e.name == "product"
                                        select _d).FirstOrDefault();

                Dictionary type_dict = (from _d in db.Dictionary
                                        from _e in db.Entity
                                        where _d.entity_id == _e.id && _d.term_name == type && _e.name == "product"
                                        select _d).FirstOrDefault();

                if (okei_dict == null || type_dict == null)
                {
                    MessageBox.Show("Ошибка справочника", "Информация");
                    return;
                }

                Product product = (from p in db.Product
                                   where p.vendor_code == vendor_code &&
                                   p.name == name &&
                                   p.okei_id == okei_dict.id &&
                                   p.type_id == type_dict.id &&
                                   p.recommended_price == recPrice &&
                                   p.remainder == remainder &&
                                   p.deleted == null
                                   select p).FirstOrDefault();
                if (product == null)
                {
                    MessageBox.Show("Не удалось найти товар, возможно он был удален, удаление невозможно", "Информация");
                    return;
                }

                product.deleted = "Y";

                Logs log = new Logs();
                log.username = username;
                log.acttime  = DateTime.Now;
                log.action   = String.Format("Delete product: vendor_code - {0}, name - {1}, okei - {2}, type - {3} recprice - {4}, remainder - {5}",
                                             product.vendor_code, product.name, okei, type, recPrice, remainder);
                db.Logs.Add(log);
                try
                {
                    db.SaveChanges();
                }
                catch (Exception)
                {
                    MessageBox.Show("Произошла ошибка, товар не был удален", "Информация");
                    return;
                }

                MessageBox.Show("Товар успешно удален из системы", "Информация");
                this.Close();
            }
        }
Пример #9
0
        private void btnDelete_Click(object sender, EventArgs e)
        {
            using (DBCtx db = new DBCtx())
            {
                Counterparty counterparty = (from c in db.Counterparty
                                             where c.inn == inn && c.deleted == null
                                             select c).FirstOrDefault();
                if (counterparty == null)
                {
                    MessageBox.Show("Не удалось найти покупателя или поставщика, удаление невозможно", "Информация");
                    return;
                }

                Dictionary dict = (from _d in db.Dictionary
                                   from _e in db.Entity
                                   where _d.entity_id == _e.id && _d.term_name == attr_name && _e.name == "counterparty"
                                   select _d).FirstOrDefault();

                if (dict == null)
                {
                    MessageBox.Show("Не удалось найти атрибут, удаление невозможно", "Информация");
                    return;
                }

                CounterpartyAttrs cpa = (from _cpa in db.CounterpartyAttrs
                                         where _cpa.counterparty_id == counterparty.id && _cpa.attr_id == dict.id && _cpa.attr_value == attr_value && _cpa.deleted == null
                                         select _cpa).FirstOrDefault();
                if (cpa == null)
                {
                    MessageBox.Show("Ошибка получения атрибута, возможно он был удален");
                    return;
                }

                cpa.deleted = "Y";

                Logs log = new Logs();
                log.username = username;
                log.acttime  = DateTime.Now;
                log.action   = String.Format("Delete counterparty attrs: counterparty(name - {0}, inn - {1}, kpp - {2}), attr (name - {3} id - {4}, value - {5})",
                                             counterparty.name, counterparty.inn, counterparty.kpp,
                                             dict.term_name, cpa.attr_id, cpa.attr_value);
                db.Logs.Add(log);
                try
                {
                    db.SaveChanges();
                }
                catch (Exception)
                {
                    MessageBox.Show("Произошла ошибка, атрибут покупателя или поставщика не был удален", "Информация");
                    return;
                }

                MessageBox.Show("Атрибут покупателя или поставщика успешно удален из системы", "Информация");
                this.Close();
            }
        }
Пример #10
0
        private void btnDelete_Click(object sender, EventArgs e)
        {
            using (DBCtx db = new DBCtx())
            {
                Product product = (from p in db.Product
                                   where p.vendor_code == vendorCode && p.deleted == null
                                   select p).FirstOrDefault();
                if (product == null)
                {
                    MessageBox.Show("Не удалось найти покупателя или поставщика, удаление невозможно", "Информация");
                    return;
                }

                Dictionary dict = (from _d in db.Dictionary
                                   from _e in db.Entity
                                   where _d.entity_id == _e.id && _d.term_name == attr_name && _e.name == "product"
                                   select _d).FirstOrDefault();

                if (dict == null)
                {
                    MessageBox.Show("Не удалось найти атрибут, удаление невозможно", "Информация");
                    return;
                }

                ProductAttrs pa = (from _pa in db.ProductAttrs
                                   where _pa.product_id == product.id && _pa.attr_id == dict.id && _pa.attr_value == attr_value && _pa.deleted == null
                                   select _pa).FirstOrDefault();
                if (pa == null)
                {
                    MessageBox.Show("Ошибка получения атрибута, возможно он был удален");
                    return;
                }

                pa.deleted = "Y";

                Logs log = new Logs();
                log.username = username;
                log.acttime  = DateTime.Now;
                log.action   = String.Format("Delete product attrs: counterparty(vendorCode - {0}, name - {1}), attr (name - {2} id - {3}, value - {4})",
                                             product.vendor_code, product.name,
                                             dict.term_name, pa.attr_id, pa.attr_value);
                db.Logs.Add(log);
                try
                {
                    db.SaveChanges();
                }
                catch (Exception)
                {
                    MessageBox.Show("Произошла ошибка, атрибут товара не был удален", "Информация");
                    return;
                }

                MessageBox.Show("Атрибут товара успешно удален из системы", "Информация");
                this.Close();
            }
        }
Пример #11
0
 /* Delete from SGAlarmInfo */
 public bool DeleteAlarmInfo(SGAlarmData alarmData)
 {
     mut.WaitOne();
     // Delete
     DBCtx.Remove(alarmData);
     DBCtx.SaveChanges();
     Log.Information("Delete the SGAlarmData, {AlarmData}", alarmData);
     mut.ReleaseMutex();
     return(true);
 }
Пример #12
0
        public Modify(string username, Bid oldBid)
        {
            InitializeComponent();

            this.username = username;
            this.oldBid   = oldBid;
            this.dictionaryTableAdapter.Fill(this.statusForCombobox.Dictionary);

            tbBidNumber.Text  = oldBid.bid_number;
            tbCreateDate.Text = oldBid.create_date.ToString();
            tbStatusDate.Text = oldBid.status_date.ToString();
            tbINN.Text        = oldBid.Counterparty.inn;

            using (DBCtx db = new DBCtx())
            {
                Dictionary status = (from d in db.Dictionary
                                     from e in db.Entity
                                     where d.id == oldBid.status_id && d.target == "STATUS" && e.id == d.entity_id && e.name == "bid"
                                     select d).FirstOrDefault();

                if (status == null)
                {
                    MessageBox.Show("Ошибка получения атрибута status", "Информация");
                    this.Close();
                }

                if (status.deleted == null)
                {
                    cbStatus.SelectedIndex = cbStatus.FindStringExact(status.term_name);
                }
                else
                {
                    MessageBox.Show("Атрибут устарел, сброс значения", "Информация");
                    cbStatus.SelectedIndex = 0;
                }

                Dictionary type = (from d in db.Dictionary
                                   from e in db.Entity
                                   where d.id == oldBid.type_id && d.target == "TYPE" && e.id == d.entity_id && e.name == "bid"
                                   select d).FirstOrDefault();

                if (type == null)
                {
                    MessageBox.Show("Ошибка получения атрибута type", "Информация");
                    this.Close();
                }

                if (type.deleted == null)
                {
                    tbType.Text = type.term_name;
                }
            }
        }
Пример #13
0
        private void btnRecovery_Click(object sender, EventArgs e)
        {
            if (!fillCheck(true))
            {
                MessageBox.Show("Одно или несколько полей не заполнены", "Информация");
                return;
            }
            using (DBCtx db = new DBCtx())
            {
                string vendorCode = tbVendorCode.Text;
                string name       = tbName.Text;
                int    okei_id    = 0;
                int    type_id    = 0;
                int.TryParse(cbOKEI.SelectedValue.ToString(), out okei_id);
                int.TryParse(cbType.SelectedValue.ToString(), out type_id);
                if (okei_id == 0 || type_id == 0)
                {
                    MessageBox.Show("Ошибка выбора элемента списка", "Информация");
                    return;
                }

                Product product = (from p in db.Product
                                   where p.vendor_code == vendorCode && p.name == name && p.okei_id == okei_id && p.type_id == type_id && p.deleted != null
                                   select p).FirstOrDefault();

                if (product == null)
                {
                    MessageBox.Show("Отсутствует в списке удаленных", "Информация");
                    return;
                }

                product.deleted = null;

                Logs log = new Logs();
                log.username = username;
                log.acttime  = DateTime.Now;
                log.action   = String.Format("Recovery product: vendor_code - {0}, name - {1}, okei - {2}, type - {3}, recommended_price - {4}, remainder - {5}",
                                             vendorCode, name, cbOKEI.GetItemText(cbOKEI.SelectedItem), cbType.GetItemText(cbType.SelectedItem), product.recommended_price, product.remainder);
                db.Logs.Add(log);
                try
                {
                    db.SaveChanges();
                }
                catch (Exception)
                {
                    MessageBox.Show("Произошла ошибка, товар не был восстановлен", "Информация");
                    return;
                }

                MessageBox.Show("Товар успешно восстановлен в системе", "Информация");
                this.Close();
            }
        }
Пример #14
0
        private void btnAdd_Click(object sender, EventArgs e)
        {
            if (!fillCheck())
            {
                MessageBox.Show("Одно или несколько полей не заполнены, восстановление невозможно", "Информация");
                return;
            }

            string name = tbName.Text;
            string inn  = tbINN.Text;
            string kpp  = tbKPP.Text;

            using (DBCtx db = new DBCtx())
            {
                Counterparty counterparty = (from c in db.Counterparty
                                             where c.name == name && c.inn == inn && c.kpp == kpp && c.deleted == null
                                             select c).FirstOrDefault();

                if (counterparty != null)
                {
                    MessageBox.Show("Данный покупатель или поставщик существует и не находится в списке удаленных, добавление невозможно", "Информация");
                    return;
                }

                counterparty      = new Counterparty();
                counterparty.name = name;
                counterparty.inn  = inn;
                counterparty.kpp  = kpp;

                db.Counterparty.Add(counterparty);

                Logs log = new Logs();
                log.username = username;
                log.acttime  = DateTime.Now;
                log.action   = "Added counterparty: " + counterparty.name + ", " + counterparty.inn + ", " + counterparty.kpp;
                db.Logs.Add(log);
                try
                {
                    db.SaveChanges();
                }
                catch (Exception)
                {
                    MessageBox.Show("Произошла ошибка, покупатель или поставщик не был добавлен", "Информация");
                    return;
                }
            }

            MessageBox.Show("Покупатель или поставщик успешно добавлен в систему", "Информация");
            this.Close();
        }
Пример #15
0
        private void btnModify_Click(object sender, EventArgs e)
        {
            using (DBCtx db = new DBCtx())
            {
                Bid nwbid = (from b in db.Bid
                             where b.bid_number == oldBid.bid_number &&
                             b.status_id == oldBid.status_id &&
                             b.counterparty_id == oldBid.counterparty_id &&
                             b.type_id == oldBid.type_id
                             select b).FirstOrDefault();
                if (nwbid == null)
                {
                    MessageBox.Show("Ошибка получения заявки, возможно она была удалена");
                    return;
                }

                int status_id = 0;
                int.TryParse(cbStatus.SelectedValue.ToString(), out status_id);
                if (status_id == 0)
                {
                    MessageBox.Show("Ошибка выбора элемента списка", "Информация");
                    return;
                }

                DateTime status_time = DateTime.Now;
                nwbid.status_id   = status_id;
                nwbid.status_date = status_time;
                tbStatusDate.Text = status_time.ToString();

                Logs log = new Logs();
                log.username = username;
                log.acttime  = DateTime.Now;
                log.action   = String.Format("Update bid: bidNumber - {0}, new status - {1}",
                                             nwbid.bid_number, cbStatus.GetItemText(cbStatus.SelectedItem));
                db.Logs.Add(log);
                try
                {
                    db.SaveChanges();
                }
                catch (Exception)
                {
                    MessageBox.Show("Произошла ошибка, заявка не была обновлена", "Информация");
                    return;
                }

                MessageBox.Show("Заявка успешно обновлена в системе", "Информация");
                this.Close();
            }
        }
Пример #16
0
        private void btnEdit_Click(object sender, EventArgs e)
        {
            using (DBCtx db = new DBCtx())
            {
                CounterpartyAttrs nwcpa = (from _cpa in db.CounterpartyAttrs
                                           where _cpa.counterparty_id == cpa.counterparty_id && _cpa.attr_id == cpa.attr_id && _cpa.attr_value == cpa.attr_value && _cpa.deleted == null
                                           select _cpa).FirstOrDefault();
                if (nwcpa == null)
                {
                    MessageBox.Show("Ошибка получения атрибута, возможно он был удален");
                    return;
                }

                if (cbAttr.Enabled)
                {
                    int attr_id = 0;
                    int.TryParse(cbAttr.SelectedValue.ToString(), out attr_id);
                    if (attr_id == 0)
                    {
                        MessageBox.Show("Ошибка выбора элемента списка", "Информация");
                        return;
                    }

                    nwcpa.attr_id = attr_id;
                }

                nwcpa.attr_value = tbVal.Text;

                Logs log = new Logs();
                log.username = username;
                log.acttime  = DateTime.Now;
                log.action   = String.Format("Update counterparty attrs: counterparty(name - {0}, inn - {1}, kpp - {2}), prev (id - {3}, value - {4}) new (id - {5}, value - {6})",
                                             counterparty.name, counterparty.inn, counterparty.kpp,
                                             cpa.attr_id, cpa.attr_value, nwcpa.attr_id, nwcpa.attr_value);
                db.Logs.Add(log);
                try
                {
                    db.SaveChanges();
                }
                catch (Exception)
                {
                    MessageBox.Show("Произошла ошибка, атрибут покупателя или поставщика не был обновлен", "Информация");
                    return;
                }

                MessageBox.Show("Атрибут покупателя или поставщика успешно обновлен в системе", "Информация");
                this.Close();
            }
        }
Пример #17
0
        private void btnModify_Click(object sender, EventArgs e)
        {
            using (DBCtx db = new DBCtx())
            {
                ProductAttrs nwpa = (from _pa in db.ProductAttrs
                                     where _pa.product_id == pa.product_id && _pa.attr_id == pa.attr_id && _pa.attr_value == pa.attr_value && _pa.deleted == null
                                     select _pa).FirstOrDefault();
                if (nwpa == null)
                {
                    MessageBox.Show("Ошибка получения атрибута, возможно он был удален");
                    return;
                }

                if (cbAttr.Enabled)
                {
                    int attr_id = 0;
                    int.TryParse(cbAttr.SelectedValue.ToString(), out attr_id);
                    if (attr_id == 0)
                    {
                        MessageBox.Show("Ошибка выбора элемента списка", "Информация");
                        return;
                    }

                    nwpa.attr_id = attr_id;
                }

                nwpa.attr_value = tbVal.Text;

                Logs log = new Logs();
                log.username = username;
                log.acttime  = DateTime.Now;
                log.action   = String.Format("Update product attrs: product(vendorCode - {0}, inn - {1}), prev (id - {2}, value - {3}) new (id - {4}, value - {5})",
                                             product.vendor_code, product.name,
                                             pa.attr_id, pa.attr_value, nwpa.attr_id, nwpa.attr_value);
                db.Logs.Add(log);
                try
                {
                    db.SaveChanges();
                }
                catch (Exception)
                {
                    MessageBox.Show("Произошла ошибка, атрибут товара не был обновлен", "Информация");
                    return;
                }

                MessageBox.Show("Атрибут товара успешно обновлен в системе", "Информация");
                this.Close();
            }
        }
Пример #18
0
        private void btnModify_Click(object sender, EventArgs e)
        {
            string name = tbName.Text;
            string inn  = tbINN.Text;
            string kpp  = tbKPP.Text;

            if (name == "" || inn == "" || kpp == "")
            {
                MessageBox.Show("Одно или несколько полей незаполнены, изменение невозможно", "Информация");
                return;
            }

            using (DBCtx db = new DBCtx())
            {
                Counterparty counterparty = (from c in db.Counterparty
                                             where c.name == oldCounterparty.name && c.inn == oldCounterparty.inn && c.kpp == oldCounterparty.kpp
                                             select c).FirstOrDefault();
                if (counterparty == null)
                {
                    MessageBox.Show("При изменении покупателя или поставщика произошла ошибка, изменение отклонено", "Информация");
                    return;
                }

                counterparty.name = name;
                counterparty.inn  = inn;
                counterparty.kpp  = kpp;

                Logs log = new Logs();
                log.username = username;
                log.acttime  = DateTime.Now;
                log.action   = String.Format("Update counterparty: prev (name - {0}, inn - {1}, kpp - {2}), new (name - {3}, inn - {4}, kpp - {5})",
                                             oldCounterparty.name, oldCounterparty.inn, oldCounterparty.kpp,
                                             counterparty.name, counterparty.inn, counterparty.kpp);
                db.Logs.Add(log);
                try
                {
                    db.SaveChanges();
                }
                catch (Exception)
                {
                    MessageBox.Show("Произошла ошибка, покупатель или поставщик не был обновлен", "Информация");
                    return;
                }

                MessageBox.Show("Покупатель или поставщик успешно обновлен в системе", "Информация");
                this.Close();
            }
        }
Пример #19
0
        public Modify(string username, Counterparty counterparty, CounterpartyAttrs cpa)
        {
            InitializeComponent();

            this.dictionaryTableAdapter.Fill(this.attrsForComboBox.Dictionary);

            this.username     = username;
            this.counterparty = counterparty;
            this.cpa          = cpa;

            tbINN.Text = counterparty.inn;
            tbVal.Text = cpa.attr_value;

            using (DBCtx db = new DBCtx())
            {
                Dictionary attr = (from d in db.Dictionary
                                   where d.id == cpa.attr_id
                                   select d).FirstOrDefault();

                if (attr == null)
                {
                    MessageBox.Show("Ошибка получения атрибута", "Информация");
                    this.Close();
                }

                if (attr.deleted == null)
                {
                    cbAttr.SelectedIndex = cbAttr.FindStringExact(attr.term_name);
                }
                else
                {
                    DialogResult result = MessageBox.Show("Возможно данный атрибут устарел, редактировать только значение (нажать да) или обновить на новый атрибут (нажать нет)", "Информация", MessageBoxButtons.YesNo);
                    if (result == DialogResult.Yes)
                    {
                        cbAttr.Enabled = false;
                    }
                    else
                    {
                        cbAttr.SelectedIndex = 0;
                    }
                }
            }
        }
Пример #20
0
 /* Insert to SGAlarmInfo */
 public bool InsertAlarmInfo(int groupId, LSIDEBAR categoryId, string path, string iconImage, string head, string body)
 {
     // Create
     Log.Information("Inserting a AlarmInfo, {AlarmHead}, {AlarmBody}", head, body);
     DBCtx.Add(new SGAlarmData
     {
         Id         = 0,
         GroupId    = groupId,
         CategoryId = categoryId,
         Path       = path,
         IconImage  = iconImage,
         Head       = head,
         Body       = body,
         Time       = DateTime.Now
     }
               );
     DBCtx.SaveChanges();
     return(true);
 }
Пример #21
0
        /* Delete from SGNotiInfo */
        public bool DeleteNotiInfo(SGNotiData notiData)
        {
            mut.WaitOne();

            int nCount = SelectNotiInfoCount(notiData.Type, notiData.GroupId, notiData.UserSeq);

            if (nCount < 1)
            {
                mut.ReleaseMutex();
                return(true);
            }

            // Delete
            DBCtx.Remove(notiData);
            DBCtx.SaveChanges();
            Log.Information("Delete the SGNotiData, {NotiData}", notiData);
            mut.ReleaseMutex();

            return(true);
        }
Пример #22
0
        private bool check()
        {
            string name = tbName.Text;
            string inn  = tbINN.Text;
            string kpp  = tbKPP.Text;

            bool flag = false;

            using (DBCtx db = new DBCtx())
            {
                Counterparty counterparty = (from c in db.Counterparty
                                             where c.name == name && c.inn == inn && c.kpp == kpp && c.deleted != null
                                             select c).FirstOrDefault();
                if (counterparty != null)
                {
                    flag = true;
                }
            }
            return(flag);
        }
Пример #23
0
        private void btnCheck_Click(object sender, EventArgs e)
        {
            if (!fillCheck(true))
            {
                MessageBox.Show("Одно или несколько полей не заполнены", "Информация");
                return;
            }
            using (DBCtx db = new DBCtx())
            {
                string inn     = tbINN.Text;
                int    attr_id = 0;
                int.TryParse(cbAttr.SelectedValue.ToString(), out attr_id);
                if (attr_id == 0)
                {
                    MessageBox.Show("Ошибка выбора элемента списка", "Информация");
                    return;
                }

                Counterparty counterparty = (from c in db.Counterparty
                                             where c.inn == inn && c.deleted == null
                                             select c).FirstOrDefault();
                if (counterparty == null)
                {
                    MessageBox.Show("Покупатель или поставщик не найден, возможно он был удален", "Информация");
                    return;
                }

                CounterpartyAttrs cpa = (from ca in db.CounterpartyAttrs
                                         where ca.counterparty_id == counterparty.id && ca.attr_id == attr_id && ca.deleted != null
                                         select ca).FirstOrDefault();

                if (cpa != null)
                {
                    MessageBox.Show("Присутствует в списке удаленных", "Информация");
                }
                else
                {
                    MessageBox.Show("Отсутствует в списке удаленных", "Информация");
                }
            }
        }
Пример #24
0
        private void btnCheck_Click(object sender, EventArgs e)
        {
            if (!fillCheck(true))
            {
                MessageBox.Show("Одно или несколько полей не заполнены", "Информация");
                return;
            }
            using (DBCtx db = new DBCtx())
            {
                string vendorCode = tbVendorCode.Text;
                int    attr_id    = 0;
                int.TryParse(cbAttr.SelectedValue.ToString(), out attr_id);
                if (attr_id == 0)
                {
                    MessageBox.Show("Ошибка выбора элемента списка", "Информация");
                    return;
                }

                Product product = (from p in db.Product
                                   where p.vendor_code == vendorCode && p.deleted == null
                                   select p).FirstOrDefault();
                if (product == null)
                {
                    MessageBox.Show("Товар не найден, возможно он был удален", "Информация");
                    return;
                }

                ProductAttrs pa = (from _pa in db.ProductAttrs
                                   where _pa.product_id == product.id && _pa.attr_id == attr_id && _pa.deleted != null
                                   select _pa).FirstOrDefault();

                if (pa != null)
                {
                    MessageBox.Show("Присутствует в списке удаленных", "Информация");
                }
                else
                {
                    MessageBox.Show("Отсутствует в списке удаленных", "Информация");
                }
            }
        }
Пример #25
0
 /* Insert to SGNotiInfo */
 public bool InsertNotiInfo(NOTI_TYPE type, int groupId, string userSeq, string seq, LSIDEBAR categoryId, string path, string iconImage, string head, string body)
 {
     // Create
     mut.WaitOne();
     Log.Information("Inserting a NotiInfo, {NotiHead}, {NotiBody}", head, body);
     DBCtx.Add(new SGNotiData
     {
         Id         = 0,
         Type       = type,
         GroupId    = groupId,
         UserSeq    = userSeq,
         Seq        = seq,
         CategoryId = categoryId,
         Path       = path,
         IconImage  = iconImage,
         Head       = head,
         Body       = body,
         Time       = DateTime.Now
     }
               );
     DBCtx.SaveChanges();
     mut.ReleaseMutex();
     return(true);
 }
Пример #26
0
        private void btnModify_Click(object sender, EventArgs e)
        {
            using (DBCtx db = new DBCtx())
            {
                int recPrice = 0;
                int.TryParse(tbRecPrice.Text, out recPrice);
                if (recPrice == 0)
                {
                    MessageBox.Show("Рекомендованная цена не число", "Информация");
                    return;
                }
                int remainder = 0;
                int.TryParse(tbRemainder.Text, out remainder);
                if (remainder == 0)
                {
                    MessageBox.Show("Остаток на складе не число", "Информация");
                    return;
                }

                Product nwproduct = (from p in db.Product
                                     where p.vendor_code == oldProduct.vendor_code &&
                                     p.name == oldProduct.name &&
                                     p.okei_id == oldProduct.okei_id &&
                                     p.type_id == oldProduct.type_id &&
                                     p.recommended_price == oldProduct.recommended_price &&
                                     p.remainder == oldProduct.remainder &&
                                     p.deleted == null
                                     select p).FirstOrDefault();
                if (nwproduct == null)
                {
                    MessageBox.Show("Ошибка получения атрибута, возможно он был удален");
                    return;
                }

                if (cbOKEI.Enabled)
                {
                    int okei_id = 0;
                    int.TryParse(cbOKEI.SelectedValue.ToString(), out okei_id);
                    if (okei_id == 0)
                    {
                        MessageBox.Show("Ошибка выбора элемента списка", "Информация");
                        return;
                    }

                    nwproduct.okei_id = okei_id;
                }

                if (cbType.Enabled)
                {
                    int type_id = 0;
                    int.TryParse(cbType.SelectedValue.ToString(), out type_id);
                    if (type_id == 0)
                    {
                        MessageBox.Show("Ошибка выбора элемента списка", "Информация");
                        return;
                    }

                    nwproduct.type_id = type_id;
                }

                nwproduct.vendor_code       = tbVendorCode.Text;
                nwproduct.name              = tbName.Text;
                nwproduct.recommended_price = recPrice;
                nwproduct.remainder         = remainder;

                Logs log = new Logs();
                log.username = username;
                log.acttime  = DateTime.Now;
                log.action   = String.Format("Update product: vendor_code - {0}, name - {1}, okei - {2}, type - {3}, recprice - {4}, remainder - {5}, prev vendor_code - {6}, name - {7}, recprice - {8}, remainder - {9}) new (id - {5}, value - {6}",
                                             nwproduct.vendor_code, nwproduct.name, cbOKEI.GetItemText(cbOKEI.SelectedItem), cbType.GetItemText(cbType.SelectedItem), nwproduct.recommended_price, nwproduct.remainder,
                                             oldProduct.vendor_code, oldProduct.name, oldProduct.recommended_price, oldProduct.remainder);
                db.Logs.Add(log);
                try
                {
                    db.SaveChanges();
                }
                catch (Exception)
                {
                    MessageBox.Show("Произошла ошибка, товар не был обновлен", "Информация");
                    return;
                }

                MessageBox.Show("Товар успешно обновлен в системе", "Информация");
                this.Close();
            }
        }
Пример #27
0
        public Modify(string username, Product oldProduct)
        {
            InitializeComponent();

            this.username   = username;
            this.oldProduct = oldProduct;

            this.dictionaryTableAdapter1.Fill(this.typeForCombobox.Dictionary);
            this.dictionaryTableAdapter.Fill(this.oKEIForCombobox.Dictionary);

            tbVendorCode.Text = oldProduct.vendor_code;
            tbName.Text       = oldProduct.name;
            tbRecPrice.Text   = oldProduct.recommended_price.ToString();
            tbRemainder.Text  = oldProduct.remainder.ToString();

            using (DBCtx db = new DBCtx())
            {
                Dictionary okei = (from d in db.Dictionary
                                   where d.id == oldProduct.okei_id
                                   select d).FirstOrDefault();

                if (okei == null)
                {
                    MessageBox.Show("Ошибка получения атрибута", "Информация");
                    this.Close();
                }

                if (okei.deleted == null)
                {
                    cbOKEI.SelectedIndex = cbOKEI.FindStringExact(okei.term_name);
                }
                else
                {
                    DialogResult result = MessageBox.Show("Возможно данный атрибут устарел, редактировать только значение (нажать да) или обновить на новый атрибут (нажать нет)", "Информация", MessageBoxButtons.YesNo);
                    if (result == DialogResult.Yes)
                    {
                        cbOKEI.Enabled = false;
                    }
                    else
                    {
                        cbOKEI.SelectedIndex = 0;
                    }
                }

                Dictionary type = (from d in db.Dictionary
                                   where d.id == oldProduct.type_id
                                   select d).FirstOrDefault();

                if (type == null)
                {
                    MessageBox.Show("Ошибка получения атрибута", "Информация");
                    this.Close();
                }

                if (type.deleted == null)
                {
                    cbType.SelectedIndex = cbType.FindStringExact(type.term_name);
                }
                else
                {
                    DialogResult result = MessageBox.Show("Возможно данный атрибут устарел, редактировать только значение (нажать да) или обновить на новый атрибут (нажать нет)", "Информация", MessageBoxButtons.YesNo);
                    if (result == DialogResult.Yes)
                    {
                        cbType.Enabled = false;
                    }
                    else
                    {
                        cbType.SelectedIndex = 0;
                    }
                }
            }
        }
Пример #28
0
        private void modifyBid(object sender, EventArgs e)
        {
            if ((dgvBid.SelectedRows == null || dgvBid.SelectedRows.Count != 1) &&
                (dgvBid.SelectedCells == null || dgvBid.SelectedCells.Count != 1))
            {
                MessageBox.Show("Не выбрана запись для редактирования или выбрано больше одной", "Информация");
                return;
            }

            int rowIndex;

            if (dgvBid.SelectedCells != null && dgvBid.SelectedCells.Count == 1)
            {
                rowIndex = dgvBid.SelectedCells[0].RowIndex;
            }
            else
            {
                rowIndex = dgvBid.SelectedRows[0].Index;
            }

            Bid  bid         = new Bid();
            bool isBidClosed = false;

            bid.bid_number  = dgvBid.Rows[rowIndex].Cells[0].Value.ToString();
            bid.create_date = DateTime.Parse(dgvBid.Rows[rowIndex].Cells[1].Value.ToString());
            bid.status_date = DateTime.Parse(dgvBid.Rows[rowIndex].Cells[3].Value.ToString());

            string status_str = dgvBid.Rows[rowIndex].Cells[2].Value.ToString();
            string type_str   = dgvBid.Rows[rowIndex].Cells[4].Value.ToString();
            string inn_str    = dgvBid.Rows[rowIndex].Cells[5].Value.ToString();

            using (DBCtx db = new DBCtx())
            {
                Dictionary status = (from d in db.Dictionary
                                     from _e in db.Entity
                                     where d.term_name == status_str &&
                                     d.target == "STATUS" && _e.id == d.entity_id && _e.name == "bid"
                                     select d).FirstOrDefault();

                if (status == null)
                {
                    MessageBox.Show("Ошибка получения атрибута", "Информация");
                    return;
                }

                if (status.term_name == "Закрыт")
                {
                    isBidClosed = true;
                }

                Dictionary type = (from d in db.Dictionary
                                   from _e in db.Entity
                                   where d.term_name == type_str &&
                                   d.target == "TYPE" && _e.id == d.entity_id && _e.name == "bid"
                                   select d).FirstOrDefault();

                if (type == null)
                {
                    MessageBox.Show("Ошибка получения атрибута", "Информация");
                    return;
                }

                Counterparty counterparty = (from c in db.Counterparty
                                             where c.inn == inn_str
                                             select c).FirstOrDefault();

                bid.type_id         = type.id;
                bid.status_id       = status.id;
                bid.counterparty_id = counterparty.id;
                bid.Counterparty    = counterparty;
            }

            if (isBidClosed)
            {
                MessageBox.Show("Нельзя изменять уже закрытую заявку", "Информация");
                return;
            }
            windows.bid.Modify modify = new windows.bid.Modify(username, bid);
            modify.ShowDialog();

            refreshBid();
        }
Пример #29
0
        private void modifyProductAttrs(object sender, EventArgs e)
        {
            if ((dgvProductAttrs.SelectedRows == null || dgvProductAttrs.SelectedRows.Count != 1) &&
                (dgvProductAttrs.SelectedCells == null || dgvProductAttrs.SelectedCells.Count != 1))
            {
                MessageBox.Show("Не выбрана запись для редактирования или выбрано больше одной", "Информация");
                return;
            }

            int rowIndex;

            if (dgvProductAttrs.SelectedCells != null && dgvProductAttrs.SelectedCells.Count == 1)
            {
                rowIndex = dgvProductAttrs.SelectedCells[0].RowIndex;
            }
            else
            {
                rowIndex = dgvProductAttrs.SelectedRows[0].Index;
            }

            string       vendorCode = dgvProductAttrs.Rows[rowIndex].Cells[0].Value.ToString();
            string       attr_name  = dgvProductAttrs.Rows[rowIndex].Cells[1].Value.ToString();
            int          attr_id    = 0;
            string       val        = dgvProductAttrs.Rows[rowIndex].Cells[2].Value.ToString();
            ProductAttrs pa         = new ProductAttrs();
            Product      product;

            using (DBCtx db = new DBCtx())
            {
                Dictionary dict = (from d in db.Dictionary
                                   from en in db.Entity
                                   where d.entity_id == en.id && en.name == "product" && d.term_name == attr_name
                                   select d).FirstOrDefault();
                if (dict == null)
                {
                    MessageBox.Show("Ошибка выбора элемента списка", "Информация");
                    return;
                }

                attr_id = dict.id;

                product = (from p in db.Product
                           where p.vendor_code == vendorCode && p.deleted == null
                           select p).FirstOrDefault();

                if (product == null)
                {
                    MessageBox.Show("Товар не найден, изменение невозможно");
                    return;
                }

                pa.product_id = product.id;
            }

            pa.attr_id    = attr_id;
            pa.attr_value = val;

            windows.productattrs.Modify modify = new windows.productattrs.Modify(username, product, pa);
            modify.ShowDialog();

            refreshProductAttrs();
        }
Пример #30
0
        private void modifyProduct(object sender, EventArgs e)
        {
            if ((dgvProduct.SelectedRows == null || dgvProduct.SelectedRows.Count != 1) &&
                (dgvProduct.SelectedCells == null || dgvProduct.SelectedCells.Count != 1))
            {
                MessageBox.Show("Не выбрана запись для редактирования или выбрано больше одной", "Информация");
                return;
            }

            int rowIndex;

            if (dgvProduct.SelectedCells != null && dgvProduct.SelectedCells.Count == 1)
            {
                rowIndex = dgvProduct.SelectedCells[0].RowIndex;
            }
            else
            {
                rowIndex = dgvProduct.SelectedRows[0].Index;
            }

            string vendor_code = dgvProduct.Rows[rowIndex].Cells[0].Value.ToString();
            string name        = dgvProduct.Rows[rowIndex].Cells[1].Value.ToString();
            int    okei_id     = 0;
            string okei        = dgvProduct.Rows[rowIndex].Cells[2].Value.ToString();
            int    type_id     = 0;
            string type        = dgvProduct.Rows[rowIndex].Cells[3].Value.ToString();
            int    recPrice    = 0;

            int.TryParse(dgvProduct.Rows[rowIndex].Cells[4].Value.ToString(), out recPrice);
            if (recPrice == 0)
            {
                MessageBox.Show("Рекомендованная цена не число", "Информация");
                return;
            }

            int remainder = 0;

            int.TryParse(dgvProduct.Rows[rowIndex].Cells[5].Value.ToString(), out remainder);
            if (remainder == 0)
            {
                MessageBox.Show("Остаток на складе не число", "Информация");
                return;
            }

            Product product;

            using (DBCtx db = new DBCtx())
            {
                Dictionary dict = (from d in db.Dictionary
                                   from en in db.Entity
                                   where d.entity_id == en.id && en.name == "product" && d.term_name == okei
                                   select d).FirstOrDefault();
                if (dict == null)
                {
                    MessageBox.Show("Ошибка выбора элемента списка", "Информация");
                    return;
                }

                okei_id = dict.id;

                dict = (from d in db.Dictionary
                        from en in db.Entity
                        where d.entity_id == en.id && en.name == "product" && d.term_name == type
                        select d).FirstOrDefault();

                if (dict == null)
                {
                    MessageBox.Show("Ошибка выбора элемента списка", "Информация");
                    return;
                }

                type_id = dict.id;

                product = (from p in db.Product
                           where p.vendor_code == vendor_code &&
                           p.name == name &&
                           p.okei_id == okei_id &&
                           p.type_id == type_id &&
                           p.recommended_price == recPrice &&
                           p.remainder == remainder &&
                           p.deleted == null
                           select p).FirstOrDefault();

                if (product == null)
                {
                    MessageBox.Show("Товар не найден, изменение невозможно");
                    return;
                }
            }

            windows.product.Modify modify = new windows.product.Modify(username, product);
            modify.ShowDialog();

            refreshProduct();
        }