using BaseOUDAL; namespace YLErp.BLL { public class trade_groupBLL { private YLContext db = new YLContext(); public static volatile bool IsListOld = true; public static object TradeGroupListLock = new object(); private static List Alltrade_groupModel = null; public static List GetAlltrade_groupModel() { if (Alltrade_groupModel == null) { lock (TradeGroupListLock) { if (Alltrade_groupModel == null) { using (YLContext con = new YLContext()) { Alltrade_groupModel = con.trade_group.ToList(); } } } } return Alltrade_groupModel; } public static void RefreshTradeGroupWithTask() { Task.Factory.StartNew(RefreshTradeGroupModel); } public static void RefreshTradeGroupModel() { Alltrade_groupModel = null; lock (TradeGroupListLock) { using (YLContext con = new YLContext()) { Alltrade_groupModel = con.trade_group.ToList(); } } } /// /// 查询trade_group /// public SearchListResult SearchList(TradeGroupReq req) { var query = from source in db.trade_group select source; if (req.OptId != null) { query = query.Where(d => d.OptId == req.OptId); } if (!string.IsNullOrEmpty(req.OptName)) { query = query.Where(d => d.OptName.Contains(req.OptName)); } if (req.ValidState == "InValid") { query = query.Where(d => d.ValidState.Equals(req.ValidState)); } else { query = query.Where(d => !d.ValidState.Equals("InValid")); } if (req.OptDateStart != DateTime.MinValue) { query = query.Where(d => d.OptDate >= req.OptDateStart); } if (req.OptDateEnd != DateTime.MinValue) { DateTime OptDateTemp = req.OptDateEnd.AddDays(1); query = query.Where(d => d.OptDate < OptDateTemp); } if (!string.IsNullOrEmpty(req.GroupName)) { query = query.Where(d => d.GroupName.Contains(req.GroupName)); } if (string.IsNullOrEmpty(req.sidx)) { req.sidx = "id"; req.sord = "desc"; } SearchListResult retListResult = query.ToSearchList(req); return retListResult; } } }