예제 #1
0
        public void AddRequirement(ModelReqmnt newRequirement)
        {
            int nLastedId = -1;

            UDataQuerySet set = new UDataQuerySet("SP_REQ_INSERT", CommandType.StoredProcedure);

            set.AddParam("@PRJID", newRequirement.ProjectId);
            set.AddParam("@CATID", newRequirement.CategoryId);
            set.AddParam("@IDX", newRequirement.Index);
            set.AddParam("@SRCID", newRequirement.SourceId);
            set.AddParam("@REQNMT", newRequirement.Requirement.Trim());

            try
            {
                nLastedId         = m_agent.GetValue <int>(set);
                newRequirement.Id = nLastedId;
                foreach (ModelRemark remark in newRequirement.AllRemark)
                {
                    remark.RequirementId = newRequirement.Id;
                    AddRemark(remark);
                }
            }
            catch (Exception ex)
            {
                log.Error(ex);
                newRequirement.Id = -1;
            }
        }
예제 #2
0
 private void gridItems_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e)
 {
     if (e.RowIndex > -1)
     {
         gridItems.Rows[e.RowIndex].Selected = true;
         DataRowView row = (DataRowView)gridItems.Rows[e.RowIndex].DataBoundItem;
         m_selectedRequirement = row["SRC"] as ModelReqmnt;
     }
 }
        internal void AddRemark(ModelReqmnt curReq, string sContents)
        {
            ModelRemark remark = new ModelRemark();

            remark.ProjectId     = curReq.ProjectId;
            remark.RequirementId = curReq.Id;
            remark.Contents      = sContents;
            curReq.AllRemark.Add(remark);

            DacFactory.Current.Requiremnt.AddRemark(remark);
        }
        private void btnNext_Click(object sender, EventArgs e)
        {
            int nIndex = DataManager.Current.Requirement.SelectedRequirements.IndexOf(CurRequirement) + 1;

            if (nIndex >= DataManager.Current.Requirement.SelectedRequirements.Count)
            {
                nIndex = 0;
            }
            CurRequirement = DataManager.Current.Requirement.SelectedRequirements[nIndex];
            Init();
        }
예제 #5
0
        internal List <ModelReqmnt> GetAllRequirements(ModelProject selectedProject, List <ModelCategory> aryAllCategory)
        {
            List <ModelReqmnt> aryResult = new List <ModelReqmnt>();

            DataTable     tbResult       = null;
            DataTable     tbResultRemark = null;
            UDataQuerySet set            = new UDataQuerySet("SP_REQ_SELECT", CommandType.StoredProcedure);

            set.AddParam("@PRJID", selectedProject.ID);

            UDataQuerySet setRemark = new UDataQuerySet("SP_REQ_REMARK_SELECT", CommandType.StoredProcedure);

            setRemark.AddParam("@PRJID", selectedProject.ID);

            try
            {
                tbResult       = m_agent.GetDataTable(set);
                tbResultRemark = m_agent.GetDataTable(setRemark);

                foreach (DataRow row in tbResult.Rows)
                {
                    ModelReqmnt req = new ModelReqmnt();
                    req.WriteData(row);
                    req.Category = aryAllCategory.Find(m => m.Id == req.CategoryIdFromDB);
                    aryResult.Add(req);

                    DataRow[] aryRemarks = tbResultRemark.Select(string.Format("REQID = {0}", req.Id));
                    foreach (DataRow rowRemark in aryRemarks)
                    {
                        ModelRemark remark = new ModelRemark();
                        remark.WriteData(rowRemark);
                        req.AllRemark.Add(remark);
                    }
                }
            }
            catch (Exception ex)
            {
                log.Error(ex);
            }
            finally
            {
                if (tbResult != null)
                {
                    tbResult.Dispose();
                }
                if (tbResultRemark != null)
                {
                    tbResultRemark.Dispose();
                }
            }

            return(aryResult);
        }
 internal void Save(ModelReqmnt SelectedRequirement)
 {
     if (SelectedRequirement.Id == -1)
     {
         DacFactory.Current.Requiremnt.AddRequirement(SelectedRequirement);
         m_aryAllRequirements.Add(SelectedRequirement);
         SelectedRequirements.Add(SelectedRequirement);
     }
     else
     {
         DacFactory.Current.Requiremnt.UpdateRequirement(SelectedRequirement);
     }
 }
        private void btnOKandNew_Click(object sender, EventArgs e)
        {
            int           nSelectedIndex = cmbPath.SelectedIndex;
            ModelCategory category       = (ModelCategory)cmbPath.Items[nSelectedIndex];

            CurRequirement.Category = category;


            CurRequirement.Index       = Convert.ToInt32(txtIndex.Text);
            CurRequirement.Requirement = txtRequirements.Text;
            DataManager.Current.Requirement.Save(CurRequirement);
            CurRequirement = null;
            Init();
        }
예제 #8
0
        internal void DelRequirement(ModelReqmnt selectedRequirement)
        {
            UDataQuerySet set = new UDataQuerySet("SP_REQ_DELETE", CommandType.StoredProcedure);

            set.AddParam("@ID", selectedRequirement.Id);

            try
            {
                m_agent.ExecuteQuery(set);
            }
            catch (Exception ex)
            {
                log.Error(ex);
            }
        }
예제 #9
0
        public void UpdateRequirement(ModelReqmnt requirement)
        {
            UDataQuerySet set = new UDataQuerySet("SP_REQ_UPDATE", CommandType.StoredProcedure);

            set.AddParam("@ID", requirement.Id);
            set.AddParam("@CATID", requirement.CategoryId);
            set.AddParam("@IDX", requirement.Index);
            set.AddParam("@REQNMT", requirement.Requirement.Trim());

            try
            {
                m_agent.ExecuteQuery(set);
            }
            catch (Exception ex)
            {
                log.Error(ex);
            }
        }
예제 #10
0
        private void Init()
        {
            if (this.InvokeRequired)
            {
                this.Invoke(new MethodInvoker(Init));
            }
            else
            {
                CollapsRemark(true);
                cmbPath.Enabled = false;

                ModelCategory selectedCategory = DataManager.Current.Category.SelectedCategory;
                cmbPath.DataSource    = null;
                cmbPath.DataSource    = DataManager.Current.Category.AllCategoryExceptRoot;
                cmbPath.DisplayMember = "PATH";
                Category_OnSelectedCategoryChanged(selectedCategory);

                if (CurRequirement == null)
                {
                    CurRequirement   = DataManager.Current.Requirement.NewRequirement();
                    cmbPath.Enabled  = true;
                    txtIndex.Enabled = true;
                }
                ModelCategory category = DataManager.Current.Category.AllCategoryExceptRoot.Find(m => m.Id == CurRequirement.CategoryId);
                if (category == null)
                {
                    category = DataManager.Current.Category.ETC;
                }


                if (category != null)
                {
                    int nIndex = cmbPath.Items.IndexOf(category);
                    cmbPath.SelectedIndex = nIndex;

                    txtIndex.Text            = Convert.ToString(CurRequirement.Index);
                    txtRequirements.Text     = CurRequirement.Requirement;
                    listRemark.DataSource    = CurRequirement.AllRemark;
                    listRemark.DisplayMember = "Contents";
                }
            }
        }
예제 #11
0
        internal ModelReqmnt NewRequirement()
        {
            ModelReqmnt newReq = new ModelReqmnt();

            if (m_parent != null && m_parent.SelectedProject != null)
            {
                int nMaxIndex = 0;
                foreach (ModelReqmnt req in SelectedRequirements)
                {
                    if (req.Index > nMaxIndex)
                    {
                        nMaxIndex = req.Index;
                    }
                }
                newReq.Id        = -1;
                newReq.Index     = nMaxIndex + 1;
                newReq.ProjectId = m_parent.SelectedProject.ID;
                newReq.Category  = m_parent.Category.SelectedCategory;
            }
            return(newReq);
        }
예제 #12
0
 internal void Delete(ModelReqmnt selectedRequirement)
 {
     DacFactory.Current.Requiremnt.DelRequirement(selectedRequirement);
     m_aryAllRequirements.Remove(selectedRequirement);
     SelectedRequirements.Remove(selectedRequirement);
 }
예제 #13
0
 internal void DeleteRemark(ModelReqmnt curReq, ModelRemark selectedRemark)
 {
     DacFactory.Current.Requiremnt.DeleteRemark(selectedRemark);
     curReq.AllRemark.Remove(selectedRemark);
 }