Beispiel #1
0
 private void confirm_Click(object sender, EventArgs e)
 {
     if (Check())
     {
         uint       sum    = Convert.ToUInt32(NUMtxt.Text);
         Book       book   = new Book(bknametxt.Text, isbntxt.Text, presstxt.Text, authortxt.Text, (BookType)bkTypebox.SelectedIndex);
         BookMaster master = new BookMaster(sum, book);
         if (FileDate.Exist <BookMaster>(master))
         {
             DialogResult dr = MessageBox.Show("此书已经存在,要直接添加吗(将会增加总数量)?", "重要提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
             if (dr == DialogResult.Yes)
             {
                 master.Total_num += sum;
                 FileDate.AlterInfo <BookMaster>(master);
             }
             else
             {
                 return;
             }
         }
         else
         {
             FileDate.WriteInfo(master);
             MessageBox.Show("书籍添加成功!", "通知");
         }
     }
 }
Beispiel #2
0
 private void opt_Click(object sender, EventArgs e)
 {
     if (!Check())
     {
         return;
     }
     if (!utemp.Valid)
     {
         //如果操作者权限大于被操作者,操作有效
         if (Main.priorityOver(utemp.Pri))
         {
             if (utemp.Balance < 0)
             {
                 MessageBox.Show("请帮TA充值后再尝试解冻", "账户余额不足", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                 return;
             }
             else
             {
                 utemp.Valid = true;
                 FileDate.AlterInfo(utemp);
                 FileDate.MatchRecord(OptType.冻结, "123456", utemp.ID);
                 MessageBox.Show("账户解冻成功.", "通知");
             }
         }
     }
     else
     {
         //如果账号正常那么就无需解冻
         MessageBox.Show("无效的操作!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Information);
     }
     this.Close();
 }
 private void confirmbtn_Click(object sender, EventArgs e)
 {
     if (found)
     {
         Book book = master.Info;
         if (nameAlter.Checked)
         {
             book.Name = alteredInfotxt.Text;
         }
         else if (authAlter.Checked)
         {
             book.Author = alteredInfotxt.Text;
         }
         else if (isbnAlter.Checked)
         {
             book.ISBN = alteredInfotxt.Text;
         }
         else if (pressAlter.Checked)
         {
             book.Press = alteredInfotxt.Text;
         }
         else
         {
             tipslb.Text = "请选择要修改哪一项";
             return;
         }
         master = new BookMaster(master.Total_num, book);
         MessageBox.Show("修改成功", "通知", MessageBoxButtons.OK, MessageBoxIcon.Information);
         FileDate.AlterInfo <BookMaster>(master);
     }
 }
Beispiel #4
0
        private void dataGridView1_DoubleClick(object sender, EventArgs e)
        {
            if (dataGridView1.SelectedRows[0].IsNewRow)
            {
                return;
            }
            DialogResult dr = MessageBox.Show("确定要借阅这本书吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

            if (dr == DialogResult.Yes)
            {
                string isbn = dataGridView1.SelectedRows[0].Cells[2].Value.ToString();
                Main.user.borrowFrom(FileDate.SearchByISBN(isbn)[0]);
                FileDate.AlterInfo <User>(Main.user);
            }
        }
Beispiel #5
0
        private void Confirmbtn_Click(object sender, EventArgs e)
        {
            bool done = false;

            if (AccountIDtxt.Text == "" || OriPwdtxt.Text == "" || NewPwdtxt.Text == "")
            {
                Tipslb.Text = "信息不能为空!请首先完善信息";
            }
            else if (RepeatPwdtxt.Text != NewPwdtxt.Text)
            {
                Tipslb.Text = "两次输入新密码不一致!请确认密码一致";
            }
            else
            {
                User utemp = new User(OriPwdtxt.Text.Trim());
                if (FileDate.Exist <User>(utemp))
                {
                    if (utemp.Valid)
                    {
                        utemp.Pwd = NewPwdtxt.Text;
                        FileDate.AlterInfo(utemp);
                        done = true;
                    }
                    else
                    {
                        Tipslb.Text = "账号已被冻结!请首先联系管理员解除冻结状态!";
                    }
                }
                else
                {
                    Tipslb.Text = "未找到用户信息!请确认是否输入了正确的信息";
                }
            }
            if (done)
            {
                DialogResult dr = MessageBox.Show("修改密码成功!需要重新登录你的账号,是否愿意?", "提示信息:", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
                this.Close();
                if (dr == DialogResult.OK)
                {
                    relog.ShowDialog();
                }
                else
                {
                    Main.user = new User("匿名游客");
                }
            }
        }
Beispiel #6
0
        private void opt_Click(object sender, EventArgs e)
        {
            if (!Check())
            {
                return;
            }
            bool firm = false;

            if (utemp.Valid)
            {
                //冻结自身账号
                if (Main.user.ID == utemp.ID)
                {
                    DialogResult dr = MessageBox.Show("确定要冻结自身账号?", "重要提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                    firm = dr == DialogResult.Yes;
                }
                else
                {
                    //如果操作者权限高于被操作者,操作有效
                    //if (Main.priorityOver(utemp.Pri)) firm = true;
                    //如果是管理员,操作有效
                    firm = Main.user.Pri == Privilege.管理员;
                }
                if (firm)
                {
                    int dur = Convert.ToInt32(Days.Text);
                    utemp.Valid = false;
                    FileDate.AlterInfo <User>(utemp);
                    FileDate.WriteInfo <Record>(new Record(OptType.冻结, "123456", utemp.ID, dur));
                    MessageBox.Show("冻结账户成功.", "通知");
                }
            }
            else
            {
                //账号已经被冻结
                MessageBox.Show("无效的操作!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            this.Close();
        }
Beispiel #7
0
        //与以前的记录匹配,成为历史记录
        public static void MatchRecord(OptType tp, string opt, string obj)
        {
            if (!File.Exists("Lib_Mana_Sys.User.dat"))
            {
                return;
            }
            int len = 0;

            using (FileStream fs = new FileStream("Lib_Mana_Sys.Record.dat", FileMode.Open))
            {
                len = (int)fs.Length / Marshal.SizeOf(typeof(Record));
            }
            Record rec = new Record();

            for (int i = 1; i <= len; i++)
            {
                rec = FileDate.ReadOne <Record>(len - i);
                if (rec.Unmatch && rec.Type == tp && rec.Optor == opt && rec.Objer == obj)
                {
                    FileDate.AlterInfo(rec.findMatch());
                    break;
                }
            }
        }
Beispiel #8
0
 //更新当前用户数据
 public static void update()
 {
     FileDate.AlterInfo(Main.user);
 }