//update inventory
        private void button8_Click(object sender, EventArgs e)
        {
            item inventory = new item();

            try
            {
                inventory.name     = txtItemName_Inventory.Text;
                inventory.minStock = Convert.ToInt32(txtMinQuantity_Inventory.Text);
                inventory.price    = Convert.ToInt32(txtUnitPrice_Inventory.Text);
                inventory.stock    = Convert.ToInt32(txtAvalableQuantity_Inventory.Text);
                inventory.itemID   = Convert.ToInt32(txtItemID_Inventory.Text);

                using (sunilGarageDBEntities db = new sunilGarageDBEntities())
                {
                    db.Entry(inventory).State = EntityState.Modified;
                    db.SaveChanges();
                    fillInventory();
                    clearInventoryField();
                }
                MessageBox.Show("inventory item updated");
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
        //fill item list.... and update total item cost
        private void fillItemList()
        {
            using (sunilGarageDBEntities db = new sunilGarageDBEntities())
            {
                jobRef = db.jobs.Where(x => x.jobID == jobRef.jobID).FirstOrDefault();
                var jobItemList = jobRef.jobItems;
                List <usedItemStruct> usedList = new List <usedItemStruct>();
                int total = 0;

                foreach (jobItem x in jobItemList)
                {
                    string itemName = db.items.Where(p => p.itemID == x.itemID).FirstOrDefault().name;
                    usedList.Add(new usedItemStruct {
                        itemID = x.itemID, itemName = itemName, unitCost = Convert.ToInt32(x.unitCost), usedQuantity = Convert.ToInt32(x.usedQuantity), totalCost = Convert.ToInt32(x.totalCost)
                    });
                    total = total + Convert.ToInt32(x.totalCost);
                }
                //update total item cost for job
                jobRef.itemsCost = total;
                db.SaveChanges();

                var source = new BindingSource();
                source.DataSource      = usedList;
                dgvItemList.DataSource = usedList;
                LBL_totalCost.Text     = total.ToString();
            }
        }
        //making job object.............
        private void makeJob()
        {
            job jb = new job();

            using (sunilGarageDBEntities db = new sunilGarageDBEntities())
            {
                try
                {
                    jb.customerNIC = comboBoxCusNIC.SelectedItem.ToString();
                    jb.jobID       = Convert.ToInt32(txtJobID_JobSheet.Text);
                    jb.description = txt_JobDescription_JobSheet.Text;
                    jb.vehicle     = MTB_VehicleID_JobSheet.Text;
                    jb.status      = state.created.ToString();
                    jb.customer    = db.customers.Where(x => x.customerNIC == comboBoxCusNIC.SelectedItem.ToString()).FirstOrDefault();
                    jb.specialNote = "";
                    jb.date        = null;
                    jb.serviceCost = 0;

                    db.jobs.Add(jb);
                    db.SaveChanges();
                    MessageBox.Show("job creater succesfully.. JobID is:" + jb.jobID);
                    fillNextJobID();

                    //clear the job sheet
                    txt_JobDescription_JobSheet.Text = null;
                    comboBoxCusNIC.Text = "";
                    MTB_VehicleID_JobSheet.Clear();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
        }
        //customer registration...........................................................................................................................

        //add customer
        private void button12_Click(object sender, EventArgs e)
        {
            customer cus = new customer();

            using (sunilGarageDBEntities db = new sunilGarageDBEntities())
            {
                try
                {
                    cus.customerNIC = txtCustomerID_people.Text;
                    cus.name        = txtCustomerName_People.Text;
                    cus.mobile      = Convert.ToInt32(txtcustomerMobile_People.Text);
                    cus.address     = txtCustomerAddress_People.Text;
                    cus.email       = txtCustomerEmail_People.Text;

                    db.customers.Add(cus);
                    db.SaveChanges();
                    clearCustomerFields();
                    fillCustomerReg();
                    MessageBox.Show("customer added");
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
        }
Exemple #5
0
        //fill text fields
        private void fillTextFields()
        {
            using (sunilGarageDBEntities db = new sunilGarageDBEntities())
            {
                //job details
                jobRef = db.jobs.Where(x => x.jobID == jobRef.jobID).FirstOrDefault();
                txtDescription.Text  = jobRef.description;
                txtID.Text           = jobRef.jobID.ToString();
                numItemCost.Value    = Convert.ToInt32(jobRef.itemsCost);
                txtSpecialNote.Text  = jobRef.specialNote;
                txtState.Text        = jobRef.status;
                txtVehicle.Text      = jobRef.vehicle;
                numServiceCost.Value = Convert.ToInt32(jobRef.serviceCost);

                //customer details
                customer c = db.customers.Where(x => x.customerNIC == jobRef.customerNIC).FirstOrDefault();
                lblCustomerAddress.Text = c.address;
                lblCustomerEmail.Text   = c.email;
                lblCustomerMobile.Text  = c.mobile.ToString();
                lblCustomerName.Text    = c.name;


                //set the state of job
                if (jobRef.status == state.complete.ToString())
                {
                    completed = true;
                }
                else
                {
                    completed = false;
                }
            }
        }
        //delete from inventory
        private void button7_Click(object sender, EventArgs e)
        {
            item inventory = new item();

            try
            {
                inventory.name     = txtItemName_Inventory.Text;
                inventory.minStock = Convert.ToInt32(txtMinQuantity_Inventory.Text);
                inventory.price    = Convert.ToInt32(txtUnitPrice_Inventory.Text);
                inventory.stock    = Convert.ToInt32(txtAvalableQuantity_Inventory.Text);
                inventory.itemID   = Convert.ToInt32(txtItemID_Inventory.Text);

                if (MessageBox.Show("are you sure you want to delete this item?", "delete inventory item", MessageBoxButtons.YesNo) == DialogResult.Yes)
                {
                    using (sunilGarageDBEntities db = new sunilGarageDBEntities())
                    {
                        db.Entry(inventory).State = EntityState.Modified;
                        var entry = db.Entry(inventory);
                        if (entry.State == EntityState.Detached)
                        {
                            db.items.Attach(inventory);
                        }
                        db.items.Remove(inventory);
                        db.SaveChanges();
                        fillInventory();
                        clearInventoryField();
                    }
                    MessageBox.Show("inventory item deleted");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
 //fill user data table
 private void fillUserTable()
 {
     using (sunilGarageDBEntities db = new sunilGarageDBEntities())
     {
         user[] userList = db.users.ToArray();
         dgvUser.DataSource = userList;
     }
 }
 //fill next user id
 private void fillNextUserID()
 {
     using (sunilGarageDBEntities db = new sunilGarageDBEntities())
     {
         int nextID = db.users.Max(x => x.ID) + 1;
         txtUserID.Text = nextID.ToString();
     }
 }
Exemple #9
0
 //fill hold jobs
 private void fillHoldJobs()
 {
     using (sunilGarageDBEntities db = new sunilGarageDBEntities())
     {
         job[] holdJobs = db.jobs.Where(x => x.status == state.hold.ToString()).ToArray();
         dgvHoldJobs.DataSource = holdJobs;
     }
 }
 // delete from list
 private void bunifuThinButton26_Click(object sender, EventArgs e)
 {
     using (sunilGarageDBEntities db = new sunilGarageDBEntities())
     {
         jobRef = db.jobs.Where(x => x.jobID == jobRef.jobID).FirstOrDefault();
         MessageBox.Show(jobRef.itemsCost.ToString());
     }
 }
 //fill ongoing repairs.................
 private void fillOngoingRepairs()
 {
     bunifu_DGV_ongoingRepairs.AutoGenerateColumns = false;
     using (sunilGarageDBEntities db = new sunilGarageDBEntities())
     {
         bunifu_DGV_ongoingRepairs.DataSource = db.jobs.Where(x => x.status != state.complete.ToString()).ToList <job>();
     }
 }
 //fill create job field with new jobID
 private void fillNextJobID()
 {
     using (sunilGarageDBEntities db = new sunilGarageDBEntities())
     {
         int jobID = db.jobs.Max(p => p.jobID) + 1;
         txtJobID_JobSheet.Text = jobID.ToString();
     }
 }
Exemple #13
0
 //fill new jobs data table
 private void fillNewJobs()
 {
     using (sunilGarageDBEntities db = new sunilGarageDBEntities())
     {
         job[] newJobs = db.jobs.Where(x => x.status == state.created.ToString()).ToArray();
         dgvNewJobs.DataSource = newJobs;
     }
 }
 //fill customer registration table
 private void fillCustomerReg()
 {
     dgvCustomerReg.AutoGenerateColumns = false;
     using (sunilGarageDBEntities db = new sunilGarageDBEntities())
     {
         dgvCustomerReg.DataSource = db.customers.ToList <customer>();
     }
 }
 //inventory.................................................................................................
 private void fillInventory()//fill the inventory data grid view
 {
     dgvInventory.AutoGenerateColumns = false;
     using (sunilGarageDBEntities db = new sunilGarageDBEntities())
     {
         dgvInventory.DataSource = db.items.ToList <item>();
     }
 }
Exemple #16
0
 //fill ongoing job field
 private void fillOnGoingJobs()
 {
     using (sunilGarageDBEntities db = new sunilGarageDBEntities())
     {
         job[] onGoingJobs = db.jobs.Where(x => x.status == state.working.ToString()).ToArray();
         dgvOngoingJobs.DataSource = onGoingJobs;
     }
 }
 //check inventory warnings
 private void checkInventoryWarnings()
 {
     dgvInventoryWarnings.AutoGenerateColumns = false;
     using (sunilGarageDBEntities db = new sunilGarageDBEntities())
     {
         item[] warnings = db.items.Where(x => x.stock < x.minStock).ToArray();
         dgvInventoryWarnings.DataSource = warnings;
     }
 }
        //search job by vehicle button
        private void bunifuThinButton214_Click(object sender, EventArgs e)
        {
            string vehicleID = comboBoxJobs.SelectedItem.ToString();

            using (sunilGarageDBEntities db = new sunilGarageDBEntities())
            {
                job        j  = db.jobs.Where(x => x.vehicle == vehicleID && x.status == state.complete.ToString()).FirstOrDefault();
                jobHistory jh = new jobHistory(true, j);
                jh.Show();
            }
        }
 //complete the job from garage
 private void button7_Click(object sender, EventArgs e)
 {
     using (sunilGarageDBEntities db = new sunilGarageDBEntities())
     {
         jobRef                 = db.jobs.Where(x => x.jobID == jobRef.jobID).FirstOrDefault();
         jobRef.specialNote     = txtSpecialNote.Text;
         jobRef.status          = state.workDone.ToString();
         db.Entry(jobRef).State = System.Data.Entity.EntityState.Modified;
         db.SaveChanges();
         updateTextFields();
     }
 }
        //job sheet................................................................................................................................................................................

        //fill customer NIC combo box
        private void fillCustomerComboBox()
        {
            using (sunilGarageDBEntities db = new sunilGarageDBEntities())
            {
                comboBoxCusNIC.Items.Clear();
                customer[] cus = db.customers.ToArray();
                foreach (customer x in cus)
                {
                    comboBoxCusNIC.Items.Add(x.customerNIC.ToString());
                }
            }
        }
        //add item to list
        private void button4_Click(object sender, EventArgs e)
        {
            //split selected sentence to words by space
            var    spitedWords      = selectedString.Split(' ');
            int    selectedItemID   = Convert.ToInt32(spitedWords.ElementAt(0));
            string selectedItemName = spitedWords.ElementAt(2);

            jobItem JItemRecord   = new jobItem();
            item    inventoryItem = new item();


            using (sunilGarageDBEntities db = new sunilGarageDBEntities())
            {
                try
                {
                    //filter out the inventory object according to comboBox selection
                    inventoryItem = db.items.Where(x => x.itemID == selectedItemID).FirstOrDefault();

                    //set jobItem object for submit to job
                    JItemRecord.jobID = jobRef.jobID;
                    int uq = Convert.ToInt32(txtUsedQuantity.Text);
                    JItemRecord.usedQuantity = uq;

                    //check requested quantity are avalable
                    if (uq > inventoryItem.stock)
                    {
                        throw new Exception("the added quantity is not avalable");
                    }
                    JItemRecord.itemID    = inventoryItem.itemID;
                    JItemRecord.unitCost  = inventoryItem.price;
                    JItemRecord.totalCost = JItemRecord.unitCost * JItemRecord.usedQuantity;

                    //add item to job
                    jobRef = db.jobs.Where(x => x.jobID == jobRef.jobID).FirstOrDefault();
                    jobRef.jobItems.Add(JItemRecord);
                    db.Entry(jobRef).State = System.Data.Entity.EntityState.Modified;

                    //reduce the quantity from inventory
                    item updatedItem = db.items.Where(x => x.itemID == selectedItemID).FirstOrDefault();
                    updatedItem.stock = updatedItem.stock - uq;
                    //db.Entry(updatedItem).State = System.Data.Entity.EntityState.Modified;


                    db.SaveChanges();
                    fillItemList();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
        }
        // customer NIC select comboBox selection changed
        private void comboBoxCusNIC_SelectedIndexChanged(object sender, EventArgs e)
        {
            customer cus = new customer();

            using (sunilGarageDBEntities db = new sunilGarageDBEntities())
            {
                cus = db.customers.Where(x => x.customerNIC == comboBoxCusNIC.SelectedItem.ToString()).FirstOrDefault();
                lblCustomerEmail.Text   = cus.email;
                lblCustomerMobile.Text  = cus.mobile.ToString();
                lblCustomerName.Text    = cus.name;
                lblCustomerAddress.Text = cus.address;
            }
        }
        //fill text fields with selected inventory item details
        private void comboBoxItemName_SelectedIndexChanged(object sender, EventArgs e)
        {
            selectedString = comboBoxItemName.SelectedItem.ToString();
            var spitedWords    = selectedString.Split(' ');
            int selectedItemID = Convert.ToInt32(spitedWords.ElementAt(0));

            item selectedItem = new item();

            using (sunilGarageDBEntities db = new sunilGarageDBEntities())
            {
                txtAvalableQuantity.Text = db.items.Where(x => x.itemID == selectedItemID).FirstOrDefault().stock.ToString();
            }
        }
 //update text filds
 private void updateTextFields()
 {
     using (sunilGarageDBEntities db = new sunilGarageDBEntities())
     {
         jobRef                 = db.jobs.Where(x => x.jobID == jobRef.jobID).FirstOrDefault();
         lblItemCost.Text       = jobRef.itemsCost.ToString();
         lblJobDescription.Text = jobRef.description.ToString();
         lblJobID.Text          = jobRef.jobID.ToString();
         txtSpecialNote.Text    = jobRef.specialNote.ToString();
         lblStatus.Text         = jobRef.status.ToString();
         lblVehicleID.Text      = jobRef.vehicle.ToString();
     }
 }
 //ongoing repairs double click
 private void bunifu_DGV_ongoingRepairs_DoubleClick(object sender, EventArgs e)
 {
     if (bunifu_DGV_ongoingRepairs.CurrentRow.Index != -1)
     {
         job jb = new job();
         jb.jobID = Convert.ToInt32(bunifu_DGV_ongoingRepairs.CurrentRow.Cells["jobID"].Value);
         using (sunilGarageDBEntities db = new sunilGarageDBEntities())
         {
             jb = db.jobs.Where(x => x.jobID == jb.jobID).FirstOrDefault();
             jobDetailsForAdmin jdfa = new jobDetailsForAdmin(jb);
             jdfa.Show();
         }
     }
 }
Exemple #26
0
 //ongoing job click
 private void dgvOngoingJobs_DoubleClick(object sender, EventArgs e)
 {
     if (dgvOngoingJobs.CurrentRow.Index != -1)
     {
         job jb = new job();
         jb.jobID = Convert.ToInt32(dgvOngoingJobs.CurrentRow.Cells["goingJobID"].Value);
         using (sunilGarageDBEntities db = new sunilGarageDBEntities())
         {
             jb = db.jobs.Where(x => x.jobID == jb.jobID).FirstOrDefault();
             jobDetails jd = new jobDetails(jb);
             jd.Show();
         }
     }
 }
Exemple #27
0
 //click complete job
 private void bunifuThinButton22_Click(object sender, EventArgs e)
 {
     jobRef.date        = Date.Value;
     jobRef.description = txtDescription.Text;
     jobRef.specialNote = txtSpecialNote.Text;
     jobRef.serviceCost = Convert.ToInt32(numServiceCost.Value);
     jobRef.status      = state.complete.ToString();
     using (sunilGarageDBEntities db = new sunilGarageDBEntities())
     {
         db.Entry(jobRef).State = EntityState.Modified;
         db.SaveChanges();
     }
     MessageBox.Show("job completed successfully");
     fillTextFields();
 }
 //inventory double click
 private void dgvInventory_DoubleClick(object sender, EventArgs e)
 {
     if (dgvInventory.CurrentRow.Index != -1)
     {
         item inventory = new item();
         inventory.itemID = Convert.ToInt32(dgvInventory.CurrentRow.Cells["itemID"].Value);
         using (sunilGarageDBEntities db = new sunilGarageDBEntities())
         {
             inventory = db.items.Where(x => x.itemID == inventory.itemID).FirstOrDefault();
             txtAvalableQuantity_Inventory.Text = inventory.stock.ToString();
             txtItemName_Inventory.Text         = inventory.name;
             txtMinQuantity_Inventory.Text      = inventory.minStock.ToString();
             txtUnitPrice_Inventory.Text        = inventory.price.ToString();
             txtItemID_Inventory.Text           = inventory.itemID.ToString();
         }
     }
 }
        //fill job item list
        private void setItemList(job j)
        {
            jobItem[]             jobItemList = j.jobItems.ToArray();
            List <usedItemStruct> usedList    = new List <usedItemStruct>();

            using (sunilGarageDBEntities db = new sunilGarageDBEntities())
            {
                foreach (jobItem x in jobItemList)
                {
                    string itemName = db.items.Where(p => p.itemID == x.itemID).FirstOrDefault().name;
                    usedList.Add(new usedItemStruct {
                        itemID = x.itemID, itemName = itemName, unitCost = Convert.ToInt32(x.unitCost), usedQuantity = Convert.ToInt32(x.usedQuantity), totalCost = Convert.ToInt32(x.totalCost)
                    });
                }
                dgvItemList.DataSource = usedList;
            }
        }
        // user registration details.........................................................................................................................................
        //user add button
        private void bunifuThinButton27_Click(object sender, EventArgs e)
        {
            using (sunilGarageDBEntities db = new sunilGarageDBEntities())
            {
                string name     = txtUserName.Text;
                string password = txtUserPassword.Text;
                bool   admin    = radioAdmin.Checked;

                user u = new user();
                u.isAdmin  = admin;
                u.name     = name;
                u.password = password;
                db.users.Add(u);
                db.SaveChanges();
                MessageBox.Show("user added done");
                clearUserTextFields();
            }
        }