コード例 #1
0
ファイル: FollowupApi.cs プロジェクト: franknew/AnjuManager
 public PagingEntity<FollowupModel> QueryFullFollowup(FullFollowupQueryForm form)
 {
     HouseBLL housebll = new HouseBLL();
     BuildingBLL buildingbll = new BuildingBLL();
     UserBLL userbll = new UserBLL();
     CustomerBLL customerbll = new CustomerBLL();
     House_CustomerBLL hcbll = new House_CustomerBLL();
     PagingEntity<FollowupModel> result = new PagingEntity<FollowupModel>();
     result.Record = new List<FollowupModel>();
     var list = bll.QueryFullFollowup(form);
     var houseids = (from f in list select f.HouseID).Distinct().ToList();
     var houses = housebll.Query(new HouseQueryForm { IDs = houseids });
     var buildingids = (from h in houses select h.BuildingID).Distinct().ToList();
     var ownerids = (from h in houses where !string.IsNullOrEmpty(h.OwnerID) select h.OwnerID).Distinct().ToList();
     var userids = (from f in list select f.Creator).Distinct().ToList();
     var buildings = buildingbll.Query(new BuildingQueryForm { IDs = buildingids });
     var hcs = hcbll.Query(new House_CustomerQueryForm { HouseOrRoomIDs = houseids });
     var customerids = (from hc in hcs select hc.CustomerID).Distinct().ToList();
     var customers = customerbll.Query(new CustomerQueryForm { IDs = customerids });
     var users = userbll.SimpleQuery(new FullUserQueryForm { IDs = userids });
     list.ForEach(t =>
     {
         FollowupModel followup = new FollowupModel
         {
             House = houses.Find(p => p.ID.Equals(t.HouseID)),
             Followup = t,
             User = users.Find(p=>p.ID.Equals(t.Creator)),
         };
         followup.Building = buildings.Find(p => p.ID.Equals(followup.House?.BuildingID));
         followup.Owner = (from hc in hcs
                           join c in customers on hc.CustomerID equals c.ID
                           where hc.HouseOrRoomID.Equals(followup.House?.ID) && c.Type == (int)CustomerType.业主
                           select c).FirstOrDefault();
         result.Record.Add(followup);
     });
     result.RecordCount = bll.QueryFullFollowupCount(form);
     return result;
 }
コード例 #2
0
ファイル: FollowupBLL.cs プロジェクト: franknew/AnjuManager
 public int QueryFullFollowupCount(FullFollowupQueryForm form)
 {
     ISqlMapper mapper = MapperHelper.GetMapper();
     FollowupDao dao = new FollowupDao(mapper);
     return dao.QueryFullFollowupCount(form);
 }
コード例 #3
0
ファイル: FollowupBLL.cs プロジェクト: franknew/AnjuManager
 public List<Followup> QueryFullFollowup(FullFollowupQueryForm form)
 {
     ISqlMapper mapper = MapperHelper.GetMapper();
     FollowupDao dao = new FollowupDao(mapper);
     return dao.QueryFullFollowup(form);
 }