using System;
using System.Linq;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;  

namespace WareHouse.frmTaghiiratsystem
{
    public partial class frmVahedeKalaiejadid : Form

    {
        public void dbConnection()
        {
            SqlConnection con = new SqlConnection();
            try
            {

                con.ConnectionString = Properties.Settings.Default.DBWare_mdbConnectionString.ToString();
                SqlCommand cmd = new SqlCommand();
                DataTable dtb = new DataTable();
                SqlDataAdapter da = new SqlDataAdapter(cmd);
                cmd.Connection = con;
                cmd.CommandText = @"SELECT     AssetUnitID, AssetUnit FROM AssetUnits Order by AssetUnitID Desc";
                con.Open();
                da.Fill(dtb);
                dgrdKalaiejadid.DataSource = dtb;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                con.Close();
            }
        }

        public frmVahedeKalaiejadid()
        {
            InitializeComponent();
        }

        private void frmVahedeKalaiejadid_Load(object sender, EventArgs e)
        {
            clasFolder.clasFarsi farTxt = new clasFolder.clasFarsi();
            farTxt.farFunction();  
            dbConnection();

        }

        private void button1_Click(object sender, EventArgs e)
        {

        }

        private void dgrdKalaiejadid_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            Int32 selectedCellCount = dgrdKalaiejadid.GetCellCount(DataGridViewElementStates.Selected);
            String Str_Fcode = String.Empty;
            String Str_FStr = String.Empty;

            if (selectedCellCount > 0)
            {
                if (dgrdKalaiejadid.AreAllCellsSelected(true))
                {
                    MessageBox.Show("All cells are selected", "Selected Cells");
                }
                else
                {
                    System.Text.StringBuilder sb = new System.Text.StringBuilder();

                    for (int i = 0; i < selectedCellCount; i++)
                    {
                        Str_Fcode = dgrdKalaiejadid.Rows[int.Parse(dgrdKalaiejadid.SelectedCells[i].RowIndex.ToString())].Cells[0].Value.ToString();
                        Str_FStr = dgrdKalaiejadid.Rows[int.Parse(dgrdKalaiejadid.SelectedCells[i].RowIndex.ToString())].Cells[1].Value.ToString();
                    }
                    Txt_UnitCode.Text = Str_Fcode;
                    txtAssetuni.Text = Str_FStr;
                }
            }
        }

        private void btnAdd_Click(object sender, EventArgs e)
        {
            txtAssetuni.Text = String.Empty;
            Txt_UnitCode.Clear();
            btnAdd.SendToBack();
            Btn_Save.BringToFront();
            MessageBox.Show("لطفا اطلاعات را وارد نمایید");
        }

        private void Btn_Save_Click(object sender, EventArgs e)
        {
            if (txtAssetuni.Text != "")
            {
                SqlConnection con = new SqlConnection();
                con.ConnectionString = Properties.Settings.Default.DBWare_mdbConnectionString.ToString();
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = con;
                cmd.CommandText = "insert into AssetUnits (AssetUnit)values('" + txtAssetuni.Text.Trim() + "')";
                con.Open();
                cmd.ExecuteNonQuery();
                con.Close();
                dbConnection();
                txtAssetuni.Clear(); 

                dbConnection();
                btnAdd.BringToFront();
                Btn_Save.SendToBack();
            }
            else
            {
                MessageBox.Show("لطفا اطلاعات را وارد نمایید");
            }
        }

        private void Btn_Edit_Click(object sender, EventArgs e)
        {
            if (Txt_UnitCode.Text == "")
            {
                MessageBox.Show("واحدی برای ویرایش انتخاب نشده است");
                return;
            }
            if (txtAssetuni.Text == "")
            {
                MessageBox.Show("لطفا عنوان واحد را وارد نمایید");
                return;
            }
            DialogResult dr = MessageBox.Show("آیا نسبت به عمل ویرایش رکورد اطمینان دارید", "اخطار ویرایش", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning);
            if (dr == DialogResult.OK)
            {
                Lsc_AnbarDataContext db = new Lsc_AnbarDataContext();
                AssetUnit EdtUnit = db.AssetUnits.Single(n => n.AssetUnitID == int.Parse(Txt_UnitCode.Text.Trim()));
                EdtUnit.AssetUnit1 = txtAssetuni.Text.Trim();
                db.SubmitChanges();
                dbConnection();
                txtAssetuni.Clear();
                Txt_UnitCode.Clear();
            }
        }

        private void Btn_Delete_Click(object sender, EventArgs e)
        {
            if (Txt_UnitCode.Text == "")
            {
                MessageBox.Show("رکوردی برای حذف انتخاب نشده است");
                return;
            }
            DialogResult dr = MessageBox.Show("آیا نسبت به عمل حذف رکورد اطمینان دارید", "اخطار حذف", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning);
            if (dr == DialogResult.OK)
            {
                Lsc_AnbarDataContext db = new Lsc_AnbarDataContext();
                try
                {
                    AssetUnit DelUnit = db.AssetUnits.Single(n => n.AssetUnitID == int.Parse(Txt_UnitCode.Text.Trim()));
                    db.AssetUnits.DeleteOnSubmit(DelUnit);
                    db.SubmitChanges();
                    dbConnection();
                    txtAssetuni.Clear();
                    Txt_UnitCode.Clear();
                    MessageBox.Show("رکورد مورد نظر حذف گردید");
                }
                catch
                {
                    MessageBox.Show("واحدی برای حذف انتخاب نشده است");
                    return;
                }
            }
        }

    }
}