Exemple #1
0
        public SearchProjectsResponse SearchProjects(SearchProjectsRequest request)
        {
            this.ClearBrokenRuleMessages();
            SearchProjectsResponse response = mgr.SearchProjects(request);

            this.AddBrokenRuleMessages(mgr.BrokenRuleMessages);
            return(response);
        }
Exemple #2
0
        private string ShowProjectName(int tid)
        {
            SearchProjectsRequest request = new SearchProjectsRequest(SearchProjectsType.SingleInstance, false, " Title ", " ASC ");

            request.ProjectID = tid;

            SearchProjectsResponse reponse = proApp.SearchProjects(request);

            return(null != reponse ? reponse.ResultList[0].Title : "");
        }
Exemple #3
0
        public SearchProjectsResponse SearchProjects(SearchProjectsRequest request)
        {
            this.ClearBrokenRuleMessages();
            SearchProjectsResponse response = projResp.SearchProjects(request);

            if (response == null)
            {
                this.AddBrokenRuleMessage();
            }
            return(projResp.SearchProjects(request));
        }
Exemple #4
0
        protected void tm_ddlCompany_SelectedIndexChanged(object sender, EventArgs e)
        {
            SearchProjectsRequest request = new SearchProjectsRequest(SearchProjectsType.Company, false, " Title ", " ASC ");

            request.CompanyID = int.Parse(this.tm_ddlCompany.SelectedValue);
            SearchProjectsResponse response = proApp.SearchProjects(request);

            if (response.ResultList != null || response.ResultList.Count > 0)
            {
                this.tm_ddlProject.DataSource = response.ResultList;
                this.tm_ddlProject.DataBind();
                //this.tm_ddlProject.SelectItem("0");
            }
        }
Exemple #5
0
 public List <ProjectDetailDTO> GetAllProjects()
 {
     if (cache[CACHE_PROJECTLIST_KEY] == null)
     {
         SearchProjectsRequest request = new SearchProjectsRequest(SearchProjectsType.All, false, "Title", "ASC");
         this.ClearBrokenRuleMessages();
         SearchProjectsResponse response = projResp.SearchProjects(request);
         if (response.ResultList == null)
         {
             this.AddBrokenRuleMessage();
             return(null);
         }
         cache[CACHE_PROJECTLIST_KEY] = response.ResultList;
     }
     return(cache[CACHE_PROJECTLIST_KEY] as List <ProjectDetailDTO>);
 }
        private void InitControl()
        {
            SearchProjectsRequest request = new SearchProjectsRequest(SearchProjectsType.List, true, hidOrderBy.Value, hidOrderDirection.Value);

            request.Keywords = txtKeyword.Text;

            request.CurrentPage = anpProjects.CurrentPageIndex;
            request.PageCount   = anpProjects.PageSize;
            request.CompanyID   = int.Parse(ddlCompany.SelectedValue);
            SearchProjectsResponse response = projApp.SearchProjects(request);

            rptProjects.DataSource = response.ResultList;
            rptProjects.DataBind();

            anpProjects.RecordCount = response.ResultCount;
            //ltlTotal.Text = request.RecordCount.ToString();
        }
Exemple #7
0
        private void BindProject()
        {
            ProjectApplication proApp = new ProjectApplication();

            if (ddlCompanies.SelectedValue == "0")
            {
                List <ProjectDetailDTO> list = proApp.GetAllProjects();
                list.BindDropdown <ProjectDetailDTO>(ddlProject, "Title", "ID", "All", "0");
            }
            else
            {
                SearchProjectsRequest request = new SearchProjectsRequest(SearchProjectsType.List, false, "Title", "ASC");
                request.CompanyID = int.Parse(ddlCompanies.SelectedValue);
                SearchProjectsResponse response = proApp.SearchProjects(request);
                response.ResultList.BindDropdown <ProjectDetailDTO>(ddlProject, "Title", "ID", "All", "0");
            }
        }
Exemple #8
0
        private void InitControl()
        {
            SearchProjectsRequest request = new SearchProjectsRequest(SearchProjectsType.List, true, OrderBy, OrderDirection);

            request.Keywords = QS("keywork");

            request.CurrentPage = CurrentPageIndex;
            request.PageCount   = anpWaitting.PageSize;
            request.CompanyID   = int.Parse(ddlCompany.SelectedValue);
            SearchProjectsResponse response = projApp.SearchProjects(request);

            rptProjects.DataSource = response.ResultList;
            rptProjects.DataBind();
            anpWaitting.RecordCount = response.ResultCount;
            if (response.ResultCount == 0)
            {
                this.trNoTickets.Visible = true;
            }
        }
Exemple #9
0
        private void InitProjects()
        {
            ProjectApplication    projApp = new ProjectApplication();
            SearchProjectsRequest request = new SearchProjectsRequest(SearchProjectsType.Company, false, " Title ", " ASC ");

            request.CompanyID = CompanyID;

            SearchProjectsResponse response = projApp.SearchProjects(request);

            if (response.ResultList == null || response.ResultList.Count <= 0)
            {
                trNoProject.Visible = true;
            }
            else
            {
                rptProjects.DataSource = response.ResultList;
                rptProjects.DataBind();
                trNoProject.Visible = false;
            }
        }
        public SearchProjectsResponse SearchProjects(SearchProjectsRequest request)
        {
            int start = request.CurrentPage * request.PageCount + 1 - request.PageCount;
            int end   = request.CurrentPage * request.PageCount;

            string        strSelCount        = " SELECT COUNT(1)  FROM  Projects p";
            string        strOrderby         = string.Format(" ({0}) {1} ", request.OrderExpression, request.OrderDirection);
            string        strSelAttrs        = @" SELECT p.*, (SELECT UserName FROM Users WHERE UserID =P.ModifiedBy) AS ModifiedByUserName, 
                                                (SELECT UserName FROM Users WHERE UserID =P.CreatedBy) AS CreatedByUserName,
                                                (SELECT UserName FROM Users WHERE UserID =P.PMID) AS PMUserName,
                                                (SELECT FirstName FROM Users WHERE UserID =P.PMID) AS PMFirstName,
                                                (SELECT LastName FROM Users WHERE UserID =P.PMID) AS PMLastName,
                                                (select  CompanyName from   Companys where  ComID=p.CompanyID ) as CompanyName  
                                    FROM   Projects p  ";
            string        strSelAttrsOrderBy = string.Format(@" Order BY {0}  ", strOrderby);
            string        strSelPageModel    = string.Format(@"SELECT * FROM(
                                                SELECT ROW_NUMBER() OVER(
                                                Order BY {0}) as  INDEX_ID,p.* , (SELECT UserName FROM Users WHERE UserID =P.ModifiedBy) AS ModifiedByUserName, 
                                                                                    (SELECT UserName FROM Users WHERE UserID =P.CreatedBy) AS CreatedByUserName,
                                                                                    (SELECT UserName FROM Users WHERE UserID =P.PMID) AS PMUserName ,
                                                                                    (SELECT FirstName FROM Users WHERE UserID =P.PMID) AS PMFirstName,
                                                                                    (SELECT LastName FROM Users WHERE UserID =P.PMID) AS PMLastName,
                                                                                    (select  CompanyName from   Companys where  ComID=p.CompanyID ) as CompanyName  
                                                FROM   Projects p   ", strOrderby);
            string        strWherePageModel  = @") NEW_TB  WHERE INDEX_ID BETWEEN @Strat AND  @End;";
            StringBuilder strWhere           = new StringBuilder();

            strWhere.Append(" WHERE 1=1 ");
            switch (request.SearchType)
            {
            case SearchProjectsType.All:
                break;

            case SearchProjectsType.AllExceptAssigned:
                strWhere.Append(" AND  p.[ProjectID] not in (Select ProjectID from ProjectUsers pu where pu.UserID=@UserID)");
                strWhere.Append(" AND (p.Title LIKE @Keywords OR p.ProjectCode LIKE @Keywords )");
                break;

            case SearchProjectsType.List:
                strWhere.Append(" AND (p.Title LIKE @Keywords OR p.ProjectCode LIKE @Keywords )");
                if (request.CompanyID != 0)
                {
                    strWhere.Append(" AND CompanyID=@CompanyID");
                }
                break;

            case SearchProjectsType.Company:
                if (request.CompanyID != 0)
                {
                    strWhere.Append(" AND  p.[CompanyID] = @CompanyID");
                }
                strWhere.Append(" AND (p.Title LIKE @Keywords OR p.ProjectCode LIKE @Keywords )");
                break;

            case SearchProjectsType.CompanyExceptAssigned:
                if (request.CompanyID != 0)
                {
                    strWhere.Append(" AND  p.[CompanyID] = @CompanyID");
                }
                strWhere.Append(" AND (p.Title LIKE @Keywords OR p.ProjectCode LIKE @Keywords )");
                strWhere.Append(" AND  p.[ProjectID] not in (Select ProjectID from ProjectUsers pu where pu.UserID=@UserID)");
                break;

            case SearchProjectsType.SingleInstance:
                strWhere.Append(" AND  p.[ProjectID] = @ProjectID");
                break;

            case SearchProjectsType.ListByUserID:
                strWhere.Append(" AND  p.[ProjectID] in (Select ProjectID from ProjectUsers pu where pu.UserID=@UserID)");
                break;

            case SearchProjectsType.Ticket:
                strWhere.Append(" AND  p.[ProjectID] IN (SELECT   [ProjectID] FROM [Tickets] WHERE [TicketID]=@TicketID)");
                break;

            default: break;
            }

            StringBuilder strSql = new StringBuilder();

            if (request.IsPageModel)
            {
                strSql.Append(strSelCount);
                strSql.Append(strWhere);
                strSql.Append(";");
                strSql.Append(strSelPageModel);
                strSql.Append(strWhere);
                strSql.Append(strWherePageModel);
            }
            else
            {
                strSql.Append(strSelAttrs);
                strSql.Append(strWhere);
                strSql.Append(strSelAttrsOrderBy);
                strSql.Append(";");
            }
            List <ProjectDetailDTO> list;
            SearchProjectsResponse  response = new SearchProjectsResponse();
            Database db = DatabaseFactory.CreateDatabase();

            using (DbCommand dbCommand = db.GetSqlStringCommand(strSql.ToString()))
            {
                try
                {
                    db.AddInParameter(dbCommand, "UserID", DbType.Int32, request.UserID);
                    db.AddInParameter(dbCommand, "TicketID", DbType.Int32, request.TicketID);
                    db.AddInParameter(dbCommand, "ProjectID", DbType.Int32, request.ProjectID);
                    db.AddInParameter(dbCommand, "CompanyID", DbType.Int32, request.CompanyID);
                    db.AddInParameter(dbCommand, "Keywords", DbType.String, string.Format("%{0}%", request.Keywords.FilterSqlString()));
                    db.AddInParameter(dbCommand, "Strat", DbType.Int32, start);
                    db.AddInParameter(dbCommand, "End", DbType.Int32, end);

                    using (IDataReader dataReader = db.ExecuteReader(dbCommand))
                    {
                        list = new List <ProjectDetailDTO>();
                        if (request.IsPageModel)
                        {
                            if (dataReader.Read())
                            {
                                response.ResultCount = dataReader.GetInt32(0);
                                dataReader.NextResult();
                            }
                        }
                        while (dataReader.Read())
                        {
                            list.Add(ProjectDetailDTO.ReaderBind(dataReader));
                        }
                        response.ResultList = list;
                    }
                }
                catch (Exception ex)
                {
                    WebLogAgent.Write(string.Format("[SQLText:{0},{1}Messages:\r\n{2}]",
                                                    strSql.ToString(),
                                                    base.FormatParameters(dbCommand.Parameters),
                                                    ex.Message));
                }
            }
            return(response);
        }