//取得此母單中所有子單的歷史問題描述及處理說明(倒序) public IQueryable<SugProductViewModel> HistoryDescList(int mID) { List<SugProductViewModel> ret = new List<SugProductViewModel>(); var qry = db.WBSEventC.Where(x => x.MomCaseID == mID).OrderByDescending(x => x.ChildCaseID); int i = qry.Count(); foreach (WBSEventC c in qry) { SugProductViewModel v = new SugProductViewModel(); SugProductViewModel v2 = new SugProductViewModel(); v.ClassStr = i.ToString() + "-問題描述"; if (i < 10) v.ClassStr = "0" + v.ClassStr; v.ProductName = c.QuestionDescription; ret.Add(v); if(c.ServiceReport != null){ v2.ClassStr = i.ToString() + "-處理說明"; if (i < 10) v2.ClassStr = "0" + v2.ClassStr; v2.ProductName = c.ServiceReport; ret.Add(v2); } i--; } return ret.AsQueryable(); }
//取得某子單建議/實際零件列表 type=0:建議零件 type=1:實際零件 public IQueryable<SugProductViewModel> SugProductList(int cid,int type) { List<SugProductViewModel> ret = new List<SugProductViewModel>(); var qryS = db.SugProduct.Where(x => x.CID == cid); if(type==0) qryS = qryS.Where(x => x.Class == 1 || x.Class == 3); else if (type == 1) qryS = qryS.Where(x => x.Class == 2 || x.Class == 4); foreach (SugProduct s in qryS) { SugProductViewModel v = new SugProductViewModel(); v.ID = s.ID.ToString(); v.Class = s.Class.ToString(); if (s.Class == 1) v.ClassStr = "建議暫借零件"; else if (s.Class == 2) v.ClassStr = "實際暫借零件"; else if (s.Class == 3) v.ClassStr = "建議銷除零件"; else v.ClassStr = "實際銷除零件"; if (s.ProductNum == null) v.ProductName = s.ProductName; else //v.ProductName = db.ProductData.AsEnumerable().Where(x => x.ProductNum == s.ProductNum).Select(x => x.Name).First(); v.ProductName = s.ProductData.Name + " - " + s.ProductData.ProductID; ret.Add(v); } return ret.AsQueryable(); }