using CRM.Core.Model; using CRM.Core.Model.EntityFB; using System; using System.Collections.Generic; using System.Linq; namespace CRM.Core.BLL.FB { public class Ord_MemoContent_BL : FbContextRepository { private ConStringHelper.CompanyCode _companyCode; public Ord_MemoContent_BL(ConStringHelper.CompanyCode companyCode) : base(companyCode) { _companyCode = companyCode; } public Dictionary GetOrdMemoContentByIds(IEnumerable coids) { using (var db = new fbContext(_companyCode)) { var ordSaleMemoList = db.ORD_SALEMEMO.Where(p => coids.Contains(p.COID)); var ordServiceMemoList = db.ORD_SERVICEMEMO.Where(p => coids.Contains(p.COID)); var ordPurposeMemoList = db.ORD_PURPOSEMEMO.Where(p => coids.Contains(p.COID)); var ordSpecialMemoList = db.ORD_SPECIALMEMO.Where(p => coids.Contains(p.COID)); var contentIds = new Dictionary(); foreach (var item in ordSaleMemoList) { if (!contentIds.ContainsKey(item.COID)) contentIds.Add(item.COID, item.MEMOCONTENTID.Value); } foreach (var item in ordServiceMemoList) { if (!contentIds.ContainsKey(item.COID)) contentIds.Add(item.COID, item.MEMOCONTENTID.Value); } foreach (var item in ordPurposeMemoList) { if (!contentIds.ContainsKey(item.COID)) contentIds.Add(item.COID, item.MEMOCONTENTID.Value); } foreach (var item in ordSpecialMemoList) { if (!contentIds.ContainsKey(item.COID)) contentIds.Add(item.COID, item.MEMOCONTENTID.Value); } var data = db.ORD_MEMOCONTENT.Where(p => contentIds.Values.Contains(p.CONTENTID)); var dic = new Dictionary(); foreach (var item in contentIds) { foreach (var subitem in data) { if (item.Value == subitem.CONTENTID) { if (!dic.ContainsKey(item.Key)) dic.Add(item.Key, subitem); } } } return dic; } } } }