Beispiel #1
0
        public List <Code> QueryCodeView(string pageStr, string limitStr, string product, string platform, string alias, out int total)
        {
            int page  = Convert.ToInt32(pageStr);
            int limit = Convert.ToInt32(limitStr);

            IEnumerable <Code> subCode = dal.GetAll <Code>();

            if (alias != null)
            {
                subCode = from m in subCode where dal.GetEntities <CodeOwnership>(c => c.Type == "code" && c.support_alias == alias).Any(x => x.FkId == m.id) == true select m;
            }

            if (product != null)
            {
                subCode = subCode.Where(c => (c.Products != null ? c.Products.ToLower().Contains(product + ":") : false));
            }
            if (platform != null)
            {
                subCode = subCode.Where(c => (c.Platform != null ? c.Platform.ToLower().Contains(platform + ":") : false));
            }
            total = subCode.Count();
            if (page != 0 || limit != 0)
            {
                page    = page == 0 ? 1 : page;
                subCode = subCode.Skip((page - 1) * limit).Take(limit);
            }

            return(subCode.ToList());
        }
Beispiel #2
0
        private List <Issue> QueryIssueView(string pageStr, string limitStr, string alias, string type, out int total)
        {
            var issues = dal.GetAll <Issue>();
            int page   = Convert.ToInt32(pageStr);
            int limit  = Convert.ToInt32(limitStr);

            IEnumerable <Issue> subIssue = dal.GetAll <Issue>();

            if (alias != null)
            {
                subIssue = from m in subIssue where dal.GetEntities <CodeOwnership>(c => c.Type == "issue" && c.support_alias == alias).Any(x => x.FkId == m.id) == true select m;
            }
            if (type != null)
            {
                subIssue = subIssue.Where(c => (c.Type != null ? c.Type.ToLower().Contains(type.ToLower()) : false));
            }
            total = subIssue.Count();

            if (page != 0 || limit != 0)
            {
                page     = page == 0 ? 1 : page;
                subIssue = subIssue.Skip((page - 1) * limit).Take(limit);
            }

            return(subIssue.ToList());
        }
Beispiel #3
0
        // GET api/<controller>/5
        public IHttpActionResult Get(int fkid, string type)
        {
            var entities = dal.GetEntities <CodeOwnership>(c => c.FkId == fkid && c.Type == type).OrderByDescending(c => c.LogAt).FirstOrDefault();

            if (entities != null)
            {
                return(Ok(entities.support_alias));
            }
            else
            {
                return(null);
            }
        }
Beispiel #4
0
        // POST: api/IssueStatus
        public HttpStatusCodeResult Post([FromBody] IssueStatusView value)
        {
            if (!ModelState.IsValid)
            {
                var errors = ModelState.Values.SelectMany(v => v.Errors).Select(e => e.Exception);
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, string.Join(" | ", errors)));
            }
            IssueStatusLog log = new IssueStatusLog();

            log.IssueID       = value.IssueID;
            log.IssueStatusID = dal.GetEntities <IssueStatu>(c => c.name == value.IssueStatusName).FirstOrDefault().id;
            log.LogAt         = DateTime.UtcNow;
            dal.AddOrUpdate <IssueStatusLog>(log, c => c.IssueID == value.IssueID, Basic.ToDictionary <IssueStatusLog>(log));
            return(new HttpStatusCodeResult(HttpStatusCode.OK));
        }
Beispiel #5
0
 // GET api/<controller>/5
 public List <Platform> Get(int id)
 {
     return(dal.GetEntities <Platform>(c => c.id == id));
 }
Beispiel #6
0
 // GET api/<controller>/5
 public List <UTLog> Get(int fkid, string type)
 {
     return(dal.GetEntities <UTLog>(c => c.FkId == fkid && c.Type == type));
 }
Beispiel #7
0
        public static PageCodeView GetCodeView(List <Code> codes, int total)
        {
            PageCodeView pageview = new PageCodeView();
            BasicCRUD    dal      = new BasicCRUD();

            try
            {
                List <CodeView> views = new List <CodeView>();
                pageview.Total = total;
                CodeView view = new CodeView();
                foreach (var item in codes)

                {
                    view               = new CodeView();
                    view.ID            = item.id;
                    view.Author        = item.Author;
                    view.Description   = item.Description;
                    view.GitHubUrl     = item.GitHubUrl;
                    view.LastUpateDate = item.LastUpdateDate;
                    view.Link          = item.Link;
                    var takeTimeEntity = dal.GetEntities <CodeOwnership>(c => c.FkId == item.id && c.Type == "code").OrderByDescending(c => c.LogAt).FirstOrDefault();
                    if (takeTimeEntity != null)
                    {
                        var takeTime = takeTimeEntity.LogAt;
                        view.NewCommit = Basic.ConvertCommitToCommitView(dal.GetEntities <Commit>(c => item.GitHubUrl.IndexOf(c.GitHubUrl) >= 0 && c.CreateAt >= takeTime), dal);
                        var newissues = dal.GetEntities <Issue>(c => c.CodeID == item.id && c.CreateAt >= takeTime);
                        view.NewIssue = Basic.ConvertIssueToIssueView(newissues, dal, newissues.Count());
                    }
                    int?ut = 0;
                    foreach (var c in dal.GetEntities <UTLog>(c => c.Type == "code" && c.FkId == item.id))
                    {
                        ut += c.UT;
                    }
                    view.UT        = ut;
                    view.Platforms = Basic.stringToList(item.Platform);
                    view.Products  = Basic.stringToList(item.Products);
                    view.SyncDate  = item.SyncDate;
                    view.Title     = item.Title;
                    var alias = dal.GetEntities <CodeOwnership>(c => c.FkId == item.id && c.Type == "code").ToList().FirstOrDefault();
                    view.Alias = alias != null ? alias.support_alias : null;

                    var process = dal.GetEntities <ProcessLog>(c => c.FkId == item.id && c.Type == "code").OrderByDescending(c => c.LogAT).FirstOrDefault();
                    if (process != null)
                    {
                        view.Process = dal.GetEntities <Process>(c => c.id == process.ProcessID).First().name;
                    }
                    else
                    {
                        view.Process = "Pending";
                    }

                    views.Add(view);
                }
                pageview.Views = views;
            }
            catch (Exception)
            {
                throw;
            }


            return(pageview);
        }
Beispiel #8
0
        // GET api/<controller>/5
        public IHttpActionResult Get(int id)
        {
            var result = dal.GetEntities <Process>(c => c.id == id);

            return(Ok(result));
        }