コード例 #1
0
 private void Set_DueDate(object sender, EventArgs e)
 {
     using (CalendaForm frm = new CalendaForm())
     {
         frm.ShowDialog();
         if (frm.dateSeleted != null)
         {
             MetroGrid grd = sender as MetroGrid;
             if (grd.SelectedRows.Count > 0)
             {
                 DialogResult dialogResult = MessageBox.Show("Are you sure to set date = " + frm.dateSeleted.ToLongDateString(), "Please confirm.", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                 if (dialogResult == DialogResult.Yes)
                 {
                     foreach (DataGridViewRow dgr in grd.SelectedRows)
                     {
                         RequisitionLineModel curr = (RequisitionLineModel)dgr.DataBoundItem;
                         try
                         {
                             if (!curr.RejectFlag)
                             {
                                 curr.DueDate = frm.dateSeleted;
                                 _repository.UpdatePRLine(curr);
                             }
                         }
                         catch
                         {
                         }
                     }
                     Filter(null, null);
                 }
             }
         }
     }
 }
コード例 #2
0
        private void ConfirmPrice_Click(object sender, EventArgs e)
        {
            MetroGrid grd = sender as MetroGrid;

            if (grd.SelectedRows.Count > 0)
            {
                DialogResult dialogResult = MessageBox.Show("Are you sure to Confirm Price.", "Please confirm.", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (dialogResult == DialogResult.Yes)
                {
                    foreach (DataGridViewRow dgr in grd.SelectedRows)
                    {
                        RequisitionLineModel curr = (RequisitionLineModel)dgr.DataBoundItem;
                        if (!curr.RejectFlag)
                        {
                            curr.PriceConfirmedFlag = true;
                            _repository.UpdatePRLine(curr);
                        }
                    }

                    //Update Purchased flag in Requisition Header.
                    var grpHeads = _view.linesSelected.GroupBy(item => item.RequisitionHeaderId)
                                   .Select(group => new { reqHeaderId = group.Key, ReqLines = group.ToList() })
                                   .ToList();

                    //Loop by Requisition Headers.
                    foreach (var req in grpHeads)
                    {
                        //Get all lines by Requisition headers.
                        List <RequisitionLineModel> lines = _repository.GetLinesByHeaderID(req.reqHeaderId);

                        //Group by PO Confirm Status.
                        var grpLinesStatus = lines.GroupBy(grp => grp.PriceConfirmedFlag)
                                             .Select(group => new { status = group.Key, lines = group.ToList() })
                                             .ToList();

                        //If not multiple status.
                        if (grpLinesStatus.Count() == 1)
                        {
                            //If PO Confirm all lines.
                            if (grpLinesStatus.FirstOrDefault().status)
                            {
                                var reqh = _repository.GetHeadByID(req.reqHeaderId);
                                reqh.PoConfirmedFlag = true;
                                _repository.UpdatePR(reqh);
                            }
                        }
                    }

                    MessageBox.Show("Confirm price complete.", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    Filter(null, null);
                    _view.RefreshLinesGird();
                }
            }
        }
コード例 #3
0
        private void Change_Cost(object sender, EventArgs e)
        {
            if (!string.IsNullOrEmpty(_view.projectNumber))
            {
                MetroGrid grd = sender as MetroGrid;
                if (grd.SelectedRows.Count > 0)
                {
                    using (ProjectCostListForm frm = new ProjectCostListForm(_view.projectNumber))
                    {
                        frm.ShowDialog();
                        if (frm.projCostSelected != null)
                        {
                            var cost = frm.projCostSelected.FirstOrDefault();

                            if (grd.SelectedRows.Count > 0)
                            {
                                DialogResult dialogResult = MessageBox.Show("Are you sure to change cost?", "Please confirm.", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                                if (dialogResult == DialogResult.Yes)
                                {
                                    foreach (DataGridViewRow dgr in grd.SelectedRows)
                                    {
                                        RequisitionLineModel curr = (RequisitionLineModel)dgr.DataBoundItem;
                                        try
                                        {
                                            if (!curr.RejectFlag)
                                            {
                                                curr.CostId   = cost.CostId;
                                                curr.CostCode = cost.CostCode;
                                                _repository.UpdatePRLine(curr);
                                                _repoProj.ProjectCost_Reset(curr.RefProjectId);
                                            }
                                        }
                                        catch
                                        {
                                        }
                                    }
                                    Filter(null, null);
                                }
                            }
                        }
                    }
                }
            }
        }
コード例 #4
0
        private void Selection_Changed(object sender, EventArgs e)
        {
            MetroGrid grd = sender as MetroGrid;

            List <RequisitionLineModel> lines = new List <RequisitionLineModel>();
            RequisitionLineModel        line  = new RequisitionLineModel();

            if (grd.SelectedRows.Count > 0)
            {
                foreach (DataGridViewRow row in grd.SelectedRows)
                {
                    line = (RequisitionLineModel)row.DataBoundItem;

                    lines.Add(line);
                }
            }

            _view.linesSelected = lines;
        }
コード例 #5
0
        private void Save_Changed(object sender, EventArgs e)
        {
            //bool Result = false;
            var lines = _view.reqLines;

            _view.bindingLines.EndEdit();
            MetroGrid grd = sender as MetroGrid;

            if (grd.Rows.Count > 0)
            {
                foreach (DataGridViewRow row in grd.Rows)
                {
                    RequisitionLineModel line = (RequisitionLineModel)row.DataBoundItem;
                    line.LastUpdateDate = DateTime.Now;
                    line.LastUpdatedBy  = _view.EpiSession.User.Id;

                    //Get Cost remaining balance.
                    var budgetCost = _repoProj.GetByProjectCost(line.RefProjectNum, line.CostCode);

                    if (budgetCost.UfBudgetRemain >= line.ExtendedAmount)
                    {
                        //Set Encumbrance Flag/Amount for PR line.
                        line.EncumbranceFlag   = true;
                        line.EncumbranceAmount = line.ExtendedAmount;
                    }
                    else
                    {
                        line.EncumbranceFlag   = false;
                        line.EncumbranceAmount = 0;
                    }

                    line.FinalUnitPrice = line.UnitPrice;
                    _repository.UpdatePRLine(line);
                }

                MessageBox.Show("Save price complete.", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
                _repoProj.ProjectCost_Reset(_view.projectParam.Id);
                Filter(null, null);
            }
        }
コード例 #6
0
        private void Reject_Click(object sender, EventArgs e)
        {
            MetroGrid grd = sender as MetroGrid;

            if (grd.SelectedRows.Count > 0)
            {
                DialogResult dialogResult = MessageBox.Show("Are you sure to Reject.", "Please confirm.", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (dialogResult == DialogResult.Yes)
                {
                    foreach (DataGridViewRow dgr in grd.SelectedRows)
                    {
                        RequisitionLineModel curr = (RequisitionLineModel)dgr.DataBoundItem;
                        if (!curr.FinalConfirmFlag)
                        {
                            curr.RejectFlag = true;
                            curr.CancelFlag = true;
                        }
                    }
                    _view.RefreshLinesGird();
                }
            }
        }
コード例 #7
0
        private void UnConfirmPrice_Click(object sender, EventArgs e)
        {
            MetroGrid grd = sender as MetroGrid;

            if (grd.SelectedRows.Count > 0)
            {
                DialogResult dialogResult = MessageBox.Show("Are you sure to Un-Confirm Price.", "Please confirm.", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (dialogResult == DialogResult.Yes)
                {
                    foreach (DataGridViewRow dgr in grd.SelectedRows)
                    {
                        RequisitionLineModel curr = (RequisitionLineModel)dgr.DataBoundItem;
                        if (curr.FinalConfirmFlag)
                        {
                            curr.FinalConfirmFlag = false;
                            _repository.UpdatePRLine(curr);
                        }
                    }
                    _view.RefreshLinesGird();
                }
            }
        }
コード例 #8
0
 private void Set_Vendor(object sender, EventArgs e)
 {
     using (VendorListForm frm = new VendorListForm())
     {
         frm.ShowDialog();
         if (frm.vendorSelected != null)
         {
             //_view.vendorNum = frm.vendorSelected.VendorNumber;
             MetroGrid grd = sender as MetroGrid;
             if (grd.SelectedRows.Count > 0)
             {
                 DialogResult dialogResult = MessageBox.Show("Are you sure to set this vendor.", "Please confirm.", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                 if (dialogResult == DialogResult.Yes)
                 {
                     foreach (DataGridViewRow dgr in grd.SelectedRows)
                     {
                         //RequisitionLineModel curr = (RequisitionLineModel)_view.bindingLine.Current;
                         RequisitionLineModel curr = (RequisitionLineModel)dgr.DataBoundItem;
                         try
                         {
                             if (!curr.RejectFlag)
                             {
                                 curr.VendorId   = frm.vendorSelected.VendorId;
                                 curr.VendorName = frm.vendorSelected.VendorName;
                                 _repository.UpdatePRLine(curr);
                             }
                         }
                         catch
                         {
                         }
                     }
                     //_view.RefreshLinesGird();
                     Filter(null, null);
                 }
             }
         }
     }
 }
コード例 #9
0
 public void DeletePRLine(RequisitionLineModel model)
 {
     factory.RequisitionLineDao.Delete(model);
 }
コード例 #10
0
 public void UpdatePRLine(RequisitionLineModel model)
 {
     factory.RequisitionLineDao.Update(model);
 }
コード例 #11
0
 public int InsertPRLine(RequisitionLineModel model)
 {
     return(factory.RequisitionLineDao.Insert(model));
 }