Esempio n. 1
0
        internal void IssueInHall(BookVO ScannedBook, ReaderVO ScannedReader, int IDEMP)
        {
            DA.InsertCommand.Parameters.Clear();
            DA.InsertCommand.Parameters.Add("IDMAIN", SqlDbType.Int).Value           = ScannedBook.IDMAIN;
            DA.InsertCommand.Parameters.Add("IDDATA", SqlDbType.Int).Value           = ScannedBook.IDDATA;
            DA.InsertCommand.Parameters.Add("IDREADER", SqlDbType.Int).Value         = ScannedReader.ID;
            DA.InsertCommand.Parameters.Add("DATE_ISSUE", SqlDbType.DateTime).Value  = DateTime.Now;
            DA.InsertCommand.Parameters.Add("DATE_RETURN", SqlDbType.DateTime).Value = DateTime.Now;
            DA.InsertCommand.Parameters.Add("IDSTATUS", SqlDbType.Int).Value         = 6;
            DA.InsertCommand.Parameters.Add("BaseId", SqlDbType.Int).Value           = (ScannedBook.FUND == Bases.BJACC) ? 1 : 2;
            DA.InsertCommand.Parameters.Add("IsAtHome", SqlDbType.Bit).Value         = false;

            DA.InsertCommand.CommandText = "insert into Reservation_R..ISSUED_ACC (IDMAIN,IDDATA,IDREADER,DATE_ISSUE,DATE_RETURN,IDSTATUS,BaseId,IsAtHome) values " +
                                           " (@IDMAIN,@IDDATA,@IDREADER,@DATE_ISSUE,@DATE_RETURN,@IDSTATUS,@BaseId,@IsAtHome);select scope_identity();";
            DA.InsertCommand.Connection.Open();
            object scope_id = DA.InsertCommand.ExecuteScalar();

            DA.InsertCommand.Parameters.Clear();
            DA.InsertCommand.Parameters.Add("IDACTION", SqlDbType.Int);
            DA.InsertCommand.Parameters.Add("IDUSER", SqlDbType.Int);
            DA.InsertCommand.Parameters.Add("IDISSUED_ACC", SqlDbType.Int);
            DA.InsertCommand.Parameters.Add("DATEACTION", SqlDbType.DateTime);

            DA.InsertCommand.Parameters["IDACTION"].Value     = 6;
            DA.InsertCommand.Parameters["IDUSER"].Value       = IDEMP;
            DA.InsertCommand.Parameters["IDISSUED_ACC"].Value = scope_id;
            DA.InsertCommand.Parameters["DATEACTION"].Value   = DateTime.Now;

            DA.InsertCommand.CommandText = "insert into Reservation_R..ISSUED_ACC_ACTIONS (IDACTION,IDEMP,IDISSUED_ACC,DATEACTION) values " +
                                           "(@IDACTION,@IDUSER,@IDISSUED_ACC,@DATEACTION)";
            DA.InsertCommand.ExecuteNonQuery();
            DA.InsertCommand.Connection.Close();
        }
Esempio n. 2
0
        internal void Recieve(BookVO ScannedBook, ReaderVO ScannedReader, int IDEMP)
        {
            DA.UpdateCommand.Parameters.Clear();
            DA.UpdateCommand.Parameters.Add("IDISSUED", SqlDbType.Int);

            DA.UpdateCommand.Parameters["IDISSUED"].Value = ScannedBook.IDISSUED;
            DA.UpdateCommand.CommandText = "update Reservation_R..ISSUED_ACC set IDSTATUS = 2 where ID = @IDISSUED";
            DA.UpdateCommand.Connection.Open();
            DA.UpdateCommand.ExecuteNonQuery();
            DA.UpdateCommand.Connection.Close();

            DA.InsertCommand.Parameters.Clear();
            DA.InsertCommand.Parameters.Add("IDACTION", SqlDbType.Int);
            DA.InsertCommand.Parameters.Add("IDUSER", SqlDbType.Int);
            DA.InsertCommand.Parameters.Add("IDISSUED_ACC", SqlDbType.Int);
            DA.InsertCommand.Parameters.Add("DATEACTION", SqlDbType.DateTime);

            DA.InsertCommand.Parameters["IDACTION"].Value     = 2;
            DA.InsertCommand.Parameters["IDUSER"].Value       = IDEMP;
            DA.InsertCommand.Parameters["IDISSUED_ACC"].Value = ScannedBook.IDISSUED;
            DA.InsertCommand.Parameters["DATEACTION"].Value   = DateTime.Now;

            DA.InsertCommand.CommandText = "insert into Reservation_R..ISSUED_ACC_ACTIONS (IDACTION,IDEMP,IDISSUED_ACC,DATEACTION) values " +
                                           "(@IDACTION,@IDUSER,@IDISSUED_ACC,@DATEACTION)";
            DA.InsertCommand.Connection.Open();
            DA.InsertCommand.ExecuteNonQuery();
            DA.InsertCommand.Connection.Close();
        }
Esempio n. 3
0
        public History(ReaderVO reader)
        {
            InitializeComponent();
            label2.Text = reader.FIO;
            DBReference dbref = new DBReference();


            dataGridView1.DataSource = dbref.GetReaderHistory(reader);

            dataGridView1.Columns["DATE_ISSUE"].HeaderText  = "Дата выдачи";
            dataGridView1.Columns["DATE_RETURN"].HeaderText = "Дата возврата";
            dataGridView1.Columns["inv"].HeaderText         = "Инвентарный номер";
            dataGridView1.Columns["tit"].HeaderText         = "Заглавие";
            dataGridView1.Columns["avt"].HeaderText         = "Автор";
            dataGridView1.Columns["ID"].HeaderText          = "№№";
            dataGridView1.Columns["ID"].Width = 40;
            int i = 0;

            foreach (DataGridViewRow row in dataGridView1.Rows)
            {
                row.Cells["ID"].Value = (++i).ToString();
            }
            dataGridView1.Columns["tit"].Width = 300;
            dataGridView1.Columns["tit"].DefaultCellStyle.WrapMode = DataGridViewTriState.True;
        }
Esempio n. 4
0
 public object GetReaderHistory(ReaderVO reader)
 {
     DA.SelectCommand.CommandText = "with hist as (select 1 ID,C.PLAIN collate Cyrillic_general_ci_ai tit,D.PLAIN collate Cyrillic_general_ci_ai avt," +
                                    " INV.SORT collate Cyrillic_general_ci_ai inv,A.DATE_ISSUE,ret.DATEACTION DATE_RETURN" +
                                    " from Reservation_R..ISSUED_ACC A" +
                                    " left join Readers..Main B on A.IDREADER = B.NumberReader" +
                                    " left join BJACC..DATAEXT CC on A.IDMAIN = CC.IDMAIN and CC.MNFIELD = 200 and CC.MSFIELD = '$a'" +
                                    " left join BJACC..DATAEXT DD on A.IDMAIN = DD.IDMAIN and DD.MNFIELD = 700 and DD.MSFIELD = '$a'" +
                                    " left join BJACC..DATAEXTPLAIN C on C.IDDATAEXT = CC.ID" +
                                    " left join BJACC..DATAEXTPLAIN D on D.IDDATAEXT = DD.ID" +
                                    " left join BJACC..DATAEXT INV on A.IDDATA = INV.IDDATA and INV.MNFIELD = 899 and INV.MSFIELD = '$w'" +
                                    " left join Reservation_R..ISSUED_ACC_ACTIONS ret on ret.IDISSUED_ACC = A.ID and ret.IDACTION = 2 " +
                                    " where A.IDSTATUS = 2 and A.BaseId = 1 and A.IDREADER = " + reader.ID +
                                    " union all " +
                                    "select 1 ID,C.PLAIN collate Cyrillic_general_ci_ai tit,D.PLAIN collate Cyrillic_general_ci_ai avt," +
                                    " INV.SORT collate Cyrillic_general_ci_ai inv,A.DATE_ISSUE,ret.DATEACTION DATE_RETURN" +
                                    " from Reservation_R..ISSUED_ACC A" +
                                    " left join Readers..Main B on A.IDREADER = B.NumberReader" +
                                    " left join BJVVV..DATAEXT CC on A.IDMAIN = CC.IDMAIN and CC.MNFIELD = 200 and CC.MSFIELD = '$a'" +
                                    " left join BJVVV..DATAEXT DD on A.IDMAIN = DD.IDMAIN and DD.MNFIELD = 700 and DD.MSFIELD = '$a'" +
                                    " left join BJVVV..DATAEXTPLAIN C on C.IDDATAEXT = CC.ID" +
                                    " left join BJVVV..DATAEXTPLAIN D on D.IDDATAEXT = DD.ID" +
                                    " left join BJVVV..DATAEXT INV on A.IDDATA = INV.IDDATA and INV.MNFIELD = 899 and INV.MSFIELD = '$w'" +
                                    " left join Reservation_R..ISSUED_ACC_ACTIONS ret on ret.IDISSUED_ACC = A.ID and ret.IDACTION = 2 " +
                                    " where A.IDSTATUS = 2 and A.BaseId =2 and A.IDREADER = " + reader.ID + ") select * from hist order by DATE_ISSUE desc";
     DS = new DataSet();
     DA.Fill(DS, "t");
     return(DS.Tables["t"]);
 }
Esempio n. 5
0
        private void button1_Click(object sender, EventArgs e)
        {
            if (Formular.SelectedRows.Count == 0)
            {
                MessageBox.Show("Выделите строку!");
                return;
            }

            if (DEPARTMENT.GetCountOfPrologedTimes((int)Formular.SelectedRows[0].Cells["idiss"].Value) > 0)
            {
                MessageBox.Show("Нельзя продлить книгу более одного раза!");
                return;
            }
            Prolong p = new Prolong();

            p.ShowDialog();
            if (p.Days == -99)
            {
                return;
            }
            BookVO book = new BookVO();

            if (Formular.SelectedRows[0].Cells["IsAtHome"].Value.ToString().ToLower().Contains("дом"))
            {
                DEPARTMENT.Prolong((int)Formular.SelectedRows[0].Cells["idiss"].Value, p.Days, EmpID);
            }
            else
            {
                DEPARTMENT.Prolong((int)Formular.SelectedRows[0].Cells["idiss"].Value, 3, EmpID);
            }
            ReaderVO reader = new ReaderVO((int)Formular.SelectedRows[0].Cells["idr"].Value);

            FillFormularGrid(reader);
        }
Esempio n. 6
0
        public void FillFormular(ReaderVO reader)
        {
            if (reader.ID == 0)
            {
                MessageBox.Show("Читатель не найден!");
                return;
            }
            FillFormularGrid(reader);

            readerRightsView1.Init(reader.ID);
        }
Esempio n. 7
0
        private void button10_Click(object sender, EventArgs e)
        {
            ReaderVO reader = new ReaderVO((int)numericUpDown3.Value);

            if (reader.ID == 0)
            {
                MessageBox.Show("Читатель не найден!");
                return;
            }
            FillFormular(reader);
        }
Esempio n. 8
0
 public ReaderInformation(ReaderVO reader_, Form1 f1_)
 {
     InitializeComponent();
     f1                = f1_;
     reader            = reader_;
     label2.Text       = reader.FIO;
     pictureBox1.Image = reader.Photo;
     MethodsForCurBase.FormTable(reader, dataGridView1);
     //DisplayCommNote();
     //RegInMos();
     label6.Text = "Дата последней отправки письма: " + reader.GetLastDateEmail();
 }
Esempio n. 9
0
        private void button17_Click(object sender, EventArgs e)
        {
            if (lFromularNumber.Text == "")
            {
                MessageBox.Show("Введите номер или считайте штрихкод читателя!");
                return;
            }
            ReaderVO          reader = new ReaderVO(int.Parse(lFromularNumber.Text));
            ReaderInformation f9     = new ReaderInformation(reader, this);

            f9.ShowDialog();
        }
Esempio n. 10
0
        private void button16_Click(object sender, EventArgs e)
        {
            if (lFromularNumber.Text == "")
            {
                MessageBox.Show("Введите номер или считайте штрихкод читателя!");
                return;
            }
            ReaderVO reader = new ReaderVO(int.Parse(lFromularNumber.Text));
            History  f7     = new History(reader);

            f7.ShowDialog();
        }
Esempio n. 11
0
        private void button2_Click(object sender, EventArgs e)
        {
            //f1.FrmlrFam(dataGridView1.SelectedRows[0].Cells[0].Value.ToString());
            if (dataGridView1.SelectedRows.Count == 0)
            {
                MessageBox.Show("Читатель не выбран!");
                return;
            }
            ReaderVO reader = new ReaderVO((int)dataGridView1.SelectedRows[0].Cells[0].Value);

            f1.FillFormular(reader);
            Close();
        }
Esempio n. 12
0
        private void bComment_Click(object sender, EventArgs e)
        {
            if (lFromularNumber.Text == "")
            {
                MessageBox.Show("Введите номер или считайте штрихкод читателя!");
                return;
            }
            ReaderVO reader = new ReaderVO(int.Parse(lFromularNumber.Text));

            ChangeComment cc = new ChangeComment(reader);

            cc.ShowDialog();
        }
Esempio n. 13
0
        internal string GetLastDateEmail(ReaderVO reader)
        {
            DA.SelectCommand.CommandText = "select top 1 DATEACTION from Reservation_R..ISSUED_ACC_ACTIONS where IDACTION = 4 and IDISSUED_ACC = " + reader.ID + " order by DATEACTION desc";//когда актион равен 4 - это значит емаил отослали. только в этом случае
            //в поле IDISSUED_ACC хранится номер читателя а не номер выдачи
            //это пипец конечно ну а чё?
            DataSet D = new DataSet();
            int     i = DA.Fill(D, "t");

            if (i == 0)
            {
                return("не отправлялось");
            }
            return(Convert.ToDateTime(D.Tables["t"].Rows[0][0]).ToString("dd.MM.yyyy HH:mm"));
        }
Esempio n. 14
0
        private void button2_Click_2(object sender, EventArgs e)
        {
            if (lFromularNumber.Text == "")
            {
                MessageBox.Show("Введите номер или считайте штрихкод читателя!");
                return;
            }
            ReaderVO     reader = new ReaderVO(int.Parse(lFromularNumber.Text));
            EmailSending es     = new EmailSending(this, reader);

            if (es.canshow)
            {
                es.ShowDialog();
            }
        }
Esempio n. 15
0
        internal bool IsAlreadyIssuedMoreThanFourBooks(ReaderVO r)
        {
            DA.SelectCommand.CommandText = "select * from Reservation_R..ISSUED_ACC where IDREADER = " + r.ID + " and IDSTATUS in (1,6)";
            DS = new DataSet();
            int i = DA.Fill(DS, "t");

            if (i >= 4)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Esempio n. 16
0
        private void bReaderRegistration_Click(object sender, EventArgs e)
        {
            if (lFromularNumber.Text == "")
            {
                MessageBox.Show("Введите номер или считайте штрихкод читателя!");
                return;
            }
            ReaderVO reader = new ReaderVO(int.Parse(lFromularNumber.Text));

            fReaderRegistrationAndRights frr = new fReaderRegistrationAndRights();

            frr.Init(reader.ID);
            frr.ShowDialog();

            FillFormular(reader);
        }
Esempio n. 17
0
        private void button4_Click(object sender, EventArgs e)
        {
            if (Formular.SelectedRows.Count == 0)
            {
                MessageBox.Show("Выделите строку!");
                return;
            }
            DialogResult dr = MessageBox.Show("Вы действительно хотите снять ответственность за выделенную книгу?", "Внимание!", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation);

            if (dr == DialogResult.No)
            {
                return;
            }
            DEPARTMENT.RemoveResponsibility((int)Formular.SelectedRows[0].Cells["idiss"].Value, EmpID);
            ReaderVO reader = new ReaderVO((int)Formular.SelectedRows[0].Cells["idr"].Value);

            FillFormularGrid(reader);
        }
Esempio n. 18
0
        public void AddAttendance(ReaderVO reader)
        {
            DA.InsertCommand.Parameters.Clear();
            DA.InsertCommand.Parameters.AddWithValue("BAR", reader.BAR);
            if (reader.BAR[0] == 'G')
            {
                DA.InsertCommand.Parameters.AddWithValue("IDReader", -1);
            }
            else
            {
                DA.InsertCommand.Parameters.AddWithValue("IDReader", reader.ID);
            }

            DA.InsertCommand.CommandText = "insert into Reservation_R..ATTENDANCE_ACC (IDReader, DATEATT, BAR) values " +
                                           " (@IDReader, getdate(), @BAR)";
            DA.InsertCommand.Connection.Open();
            DA.InsertCommand.ExecuteNonQuery();
            DA.InsertCommand.Connection.Close();
        }
Esempio n. 19
0
        public string GetEmail(ReaderVO reader)
        {
            DA.SelectCommand.CommandText = "select Email from Readers..Main where NumberReader = " + reader.ID;
            DataSet D = new DataSet();
            int     i = DA.Fill(D);

            if (i == 0)
            {
                return("");
            }
            if (this.IsValidEmail(D.Tables[0].Rows[0][0].ToString()))
            {
                return(D.Tables[0].Rows[0][0].ToString());
            }
            else
            {
                return("");
            }
        }
Esempio n. 20
0
        /// <summary>
        /// Возвращаемые значения:
        /// 0 - Издание принято от читателя
        /// 1 - Штрихкод не найден ни в базе читателей ни в базе книг
        /// 2 - ожидался штрихкод читателя, а считан штрихкод издания
        /// 3 - ожидался штрихкод издания, а считан штрихкод читателя
        /// 4 - Издание подготовлено к выдаче. ожидаем штрихкод читателя
        /// 5 - Издание и читатель подготовлены к выдаче
        ///
        /// </summary>
        /// <param name="PortData"></param>
        public int Circulate(string PortData)
        {
            BARTYPE ScannedType;

            if (ExpectedBar == ExpectingAction.WaitingConfimation)//если ожидается подтверждение выдачи
            {
                return(5);
            }

            if ((ScannedType = BookOrReader(PortData)) == BARTYPE.NotExist)//существует ли такой штрихкод вообще либо в базе читателей либо в базе изданий
            {
                return(1);
            }

            if (ExpectedBar == ExpectingAction.WaitingBook) //если сейчас ожидается штрихкод книги
            {
                if (ScannedType == BARTYPE.Reader)          //выяснить какой штрихкод сейчас считан: читатель или книга
                {
                    return(3);
                }
                this.ScannedBook = new BookVO(PortData);
                if (ScannedBook.IsIssued())
                {
                    return(0);
                }
                else
                {
                    ExpectedBar = ExpectingAction.WaitingReader;
                    return(4);
                }
            }
            else  //если сейчас ожидается штрихкод читателя
            {
                if ((ScannedType == BARTYPE.BookACC) || (ScannedType == BARTYPE.BookBJVVV)) //выяснить какой штрихкод сейчас считан: читатель или книга
                {
                    return(2);
                }
                ScannedReader = new ReaderVO(PortData);
                ExpectedBar   = ExpectingAction.WaitingConfimation;
                return(5);
            }
        }
Esempio n. 21
0
        private void AttendanceScan(string fromport)
        {
            if (!ReaderVO.IsReader(fromport))
            {
                MessageBox.Show("Неверный штрихкод читателя!", "Внимание!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return;
            }
            ReaderVO reader = new ReaderVO(fromport);

            if (!reader.IsAlreadyMarked())
            {
                DEPARTMENT.AddAttendance(reader);
                label21.Text = "На сегодня посещаемость составляет: " + DEPARTMENT.GetAttendance() + " человек(а)";
            }
            else
            {
                MessageBox.Show("Этот читатель уже посетил текущий зал сегодня!");
                return;
            }
        }
Esempio n. 22
0
 public void FillFormularGrid(ReaderVO reader)
 {
     lFormularName.Text   = reader.Family + " " + reader.Name + " " + reader.Father;
     lFromularNumber.Text = reader.ID.ToString();
     Formular.DataSource  = reader.GetFormular();
     Formular.Columns["num"].HeaderText       = "№№";
     Formular.Columns["num"].Width            = 40;
     Formular.Columns["bar"].HeaderText       = "Штрихкод";
     Formular.Columns["bar"].Width            = 80;
     Formular.Columns["avt"].HeaderText       = "Автор";
     Formular.Columns["avt"].Width            = 200;
     Formular.Columns["tit"].HeaderText       = "Заглавие";
     Formular.Columns["tit"].Width            = 400;
     Formular.Columns["iss"].HeaderText       = "Дата выдачи";
     Formular.Columns["iss"].Width            = 80;
     Formular.Columns["ret"].HeaderText       = "Предполагаемая дата возврата";
     Formular.Columns["ret"].Width            = 110;
     Formular.Columns["shifr"].HeaderText     = "Расстановочный шифр";
     Formular.Columns["shifr"].Width          = 90;
     Formular.Columns["idiss"].Visible        = false;
     Formular.Columns["idr"].Visible          = false;
     Formular.Columns["DATE_ISSUE"].Visible   = false;
     Formular.Columns["fund"].HeaderText      = "Фонд";
     Formular.Columns["fund"].Width           = 50;
     Formular.Columns["prolonged"].HeaderText = "Продлено, раз";
     Formular.Columns["prolonged"].Width      = 80;
     Formular.Columns["IsAtHome"].HeaderText  = "Тип выдачи";
     Formular.Columns["IsAtHome"].Width       = 80;
     Formular.Columns["rack"].HeaderText      = "Стеллаж";
     Formular.Columns["rack"].Width           = 80;
     pictureBox2.Image = reader.Photo;
     foreach (DataGridViewRow r in Formular.Rows)
     {
         DateTime ret = (DateTime)r.Cells["ret"].Value;
         if (ret < DateTime.Now)
         {
             r.DefaultCellStyle.BackColor = Color.Tomato;
         }
     }
 }
Esempio n. 23
0
        public EmailSending(Form1 f1_, ReaderVO reader_)
        {
            InitializeComponent();
            f1          = f1_;
            reader      = reader_;
            label1.Text = reader.FIO;
            int rownum = 0;

            bold = new List <int>();
            //IDISSUED_ACC = IDISS;
            label2.Text = "Дата последней отправки письма: " + reader.GetLastDateEmail();



            Email = reader.GetEmail();
            //WorkEmail = reader.GetWorkEmail();
            //RegEmail = reader.GetRegEmail();
            //LiveEmail = "*****@*****.**";
            //WorkEmail = "*****@*****.**";

            if (Email == "")
            {
                MessageBox.Show("Email не существует или имеет неверный формат!");
                this.Close();
                return;
            }
            this.canshow      = true;
            richTextBox1.Text = "Уважаемый(ая) " + reader.Name + " " + reader.Father + "!" + rn +
                                "Вы задерживаете книги:" + rn + rn;
            foreach (DataGridViewRow r in f1.Formular.Rows)
            {
                if (r.DefaultCellStyle.BackColor == Color.Tomato)
                {
                    rownum++;
                    string zag = r.Cells["tit"].Value.ToString();
                    if (zag.Length > 21)
                    {
                        zag.Remove(20);
                    }
                    TimeSpan ts = DateTime.Now.AddDays(1) - (DateTime)r.Cells["ret"].Value;
                    richTextBox1.Text += rownum.ToString() + ". " + r.Cells["avt"].Value.ToString() +
                                         ", " + zag +
                                         ", выдано: " + ((DateTime)r.Cells["iss"].Value).ToString("dd.MM.yyyy") +
                                         ", дата возврата: ";
                    richTextBox1.Text += ((DateTime)r.Cells["ret"].Value).ToString("dd.MM.yyyy");
                    bold.Add(richTextBox1.TextLength - 10);
                    richTextBox1.Text += ". Задержано на " + ts.Days.ToString() + " дней." + rn;
                }
            }
            if (rownum == 0)
            {
                MessageBox.Show("За читателем нет задоженностей!");
                this.canshow = false;
                this.Close();
                return;
            }
            richTextBox1.Text += rn + "Просим Вас в ближайшее время вернуть литературу в Центр Американской Культуры Библиотеки иностранной литературы." + rn +
                                 "С уважением, " + rn +
                                 "Центр Американской Культуры ВГБИЛ," + rn +
                                 "тел. +7 (495) " + rn +
                                 "пн-пт - с 11:00 до 20:45." + rn +
                                 "субб - с 11:00 до 18:45";

            foreach (int i in bold)
            {
                richTextBox1.Select(i, 10);
                richTextBox1.SelectionFont = new Font(richTextBox1.Font, FontStyle.Bold);
            }
            htmltext = EmailSending.ConvertRtfToHtml(richTextBox1.Rtf);
        }
Esempio n. 24
0
        public void AddAttendance(ReaderVO reader)
        {
            DBGeneral dbg = new DBGeneral();

            dbg.AddAttendance(reader);
        }
Esempio n. 25
0
        public static void FormTable(ReaderVO reader, DataGridView dataGridView1)
        {
            SqlDataAdapter SQLDA = new SqlDataAdapter();

            SQLDA.SelectCommand             = new SqlCommand();
            SQLDA.SelectCommand.Connection  = new SqlConnection(XmlConnections.GetConnection("/Connections/CirculationACC"));
            SQLDA.SelectCommand.CommandText = "select * from Readers..Main where NumberReader = " + reader.ID;
            DataSet DS = new DataSet();

            SQLDA.Fill(DS, "lll");
            dataGridView1.Columns.Add("value", "");
            dataGridView1.ColumnHeadersVisible = false;
            dataGridView1.RowHeadersWidth      = 296;
            dataGridView1.Columns[0].Width     = 436;
            int i = 0;
            Dictionary <string, string> FieldsCaptions = new Dictionary <string, string>();

            SQLDA.SelectCommand.CommandText = "      USE Readers;  " +
                                              "SELECT " +
                                              "             [Table Name] = OBJECT_NAME(c.object_id),  " +
                                              "             [Column Name] = c.name,  " +
                                              "             [Description] = ex.value   " +
                                              "       FROM   " +
                                              "             sys.columns c   " +
                                              "       LEFT OUTER JOIN   " +
                                              "             sys.extended_properties ex   " +
                                              "       ON   " +
                                              "             ex.major_id = c.object_id  " +
                                              "             AND ex.minor_id = c.column_id   " +
                                              "             AND ex.name = 'MS_Description'   " +
                                              "       WHERE   " +
                                              "             OBJECTPROPERTY(c.object_id, 'IsMsShipped')=0   " +
                                              "             AND OBJECT_NAME(c.object_id) = 'Main' " +
                                              "       ORDER  " +
                                              "             BY OBJECT_NAME(c.object_id), c.column_id;";
            SQLDA.Fill(DS, "fldcap");
            foreach (DataRow r in DS.Tables["fldcap"].Rows)
            {
                FieldsCaptions.Add(r["Column Name"].ToString(), r["Description"].ToString());
            }
            foreach (DataColumn col in DS.Tables["lll"].Columns)
            {
                if ((col.ColumnName == "Document") || (col.ColumnName == "DocumentNumber") || (col.ColumnName == "Photo") || (col.ColumnName == "Photo") || (col.ColumnName == "AbonementType") || (col.ColumnName == "SheetWithoutCard") || (col.ColumnName == "Password") || (col.ColumnName == "FamilyNameFind") || (col.ColumnName == "NameFind") || (col.ColumnName == "FatherNameFind") || (col.ColumnName == "Interest"))
                {
                    continue;
                }
                dataGridView1.Rows.Add();
                dataGridView1.Rows[i].HeaderCell.Value = FieldsCaptions[col.ColumnName];
                string value = DS.Tables["lll"].Rows[0][col].ToString();
                value = MethodsForCurBase.GetValueFromList(col.ColumnName, value);
                value = MethodsForCurBase.GetRightBoolValue(value);
                if (DS.Tables["lll"].Rows[0][col].GetType() == typeof(DateTime))
                {
                    value = ((DateTime)DS.Tables["lll"].Rows[0][col]).ToShortDateString();
                }
                dataGridView1.Rows[i].Cells[0].Value = value;
                i++;
            }

            /*SQLDA.SelectCommand.CommandText = "select B.NameInterest intr from Readers..Interest A inner join Readers..InterestList B on A.IDInterest = B.IDInterest where IDReader = " + reader.ID;
             * SQLDA.Fill(DS, "itrs");
             * foreach (DataRow r in DS.Tables["itrs"].Rows)
             * {
             *  dataGridView1.Rows.Add();
             *  dataGridView1.Rows[i].HeaderCell.Value = "Интерес";
             *  dataGridView1.Rows[i].Cells[0].Value = r["intr"].ToString();
             *  i++;
             * }*/
            /*SQLDA.SelectCommand.CommandText = "select B.NameLanguage lng from Readers..Language A inner join Readers..LanguageList B on A.IDLanguage = B.IDLanguage where IDReader = " + reader.ID;
             * SQLDA.Fill(DS, "lng");
             * foreach (DataRow r in DS.Tables["lng"].Rows)
             * {
             *  dataGridView1.Rows.Add();
             *  dataGridView1.Rows[i].HeaderCell.Value = "Язык";
             *  dataGridView1.Rows[i].Cells[0].Value = r["lng"].ToString();
             *  i++;
             * }*/
        }
Esempio n. 26
0
 public ChangeComment(ReaderVO reader_)
 {
     InitializeComponent();
     reader        = reader_;
     textBox1.Text = reader.GetComment();
 }
Esempio n. 27
0
        void Form1_Scanned(string fromport)
        {
            string g = tabControl1.SelectedTab.ToString();

            switch (tabControl1.SelectedTab.Text)
            {
            case "Формуляр читателя":
                #region formular
                ReaderVO reader = new ReaderVO(fromport);
                FillFormular(reader);

                #endregion
                break;

            case "Приём/выдача изданий":
                #region priem
                switch (DEPARTMENT.Circulate(fromport))
                {
                case 0:
                    DEPARTMENT.RecieveBook(EmpID);
                    CancelIssue();
                    break;

                case 1:
                    MessageBox.Show("Штрихкод не найден ни в базе читателей ни в базе книг!");
                    break;

                case 2:
                    MessageBox.Show("Ожидался штрихкод читателя, а считан штрихкод издания!");
                    break;

                case 3:
                    MessageBox.Show("Ожидался штрихкод издания, а считан штрихкод читателя!");
                    break;

                case 4:
                    lAuthor.Text    = DEPARTMENT.ScannedBook.AUTHOR;
                    lTitle.Text     = DEPARTMENT.ScannedBook.TITLE;
                    bCancel.Enabled = true;
                    label1.Text     = "Считайте штрихкод читателя";
                    break;

                case 5:
                    lReader.Text      = DEPARTMENT.ScannedReader.Family + " " + DEPARTMENT.ScannedReader.Name + " " + DEPARTMENT.ScannedReader.Father;
                    RPhoto.Image      = DEPARTMENT.ScannedReader.Photo;
                    bConfirm.Enabled  = true;
                    this.AcceptButton = bConfirm;
                    bConfirm.Focus();
                    label1.Text = "Подтвердите операцию";
                    break;
                }
                Log();
                break;
                #endregion



            case "Учёт посещаемости":
                #region Учёт посещаемости
                AttendanceScan(fromport);

                break;
                #endregion
            }
        }