username@email.com
2022-12-28 81ac184ee7fcf0a93eee4d2026edc91f3f3c0070
zhengcaioa/Services/IntentionCustomerService.cs
@@ -101,6 +101,10 @@
                    updateproject.Weixiner = intentionCustomer.Weixiner;
                    updateproject.Weixintime = intentionCustomer.Weixintime;
                    if (!string.IsNullOrEmpty(intentionCustomer.HuiyuanId))
                    {
                        updateproject.HuiyuanId = intentionCustomer.HuiyuanId;
                    }
                }
            _context.SaveChanges();
@@ -202,6 +206,13 @@
               // Yixiangtimeend = Yixiangtimeend.AddDays(1);
            }
            int aaaa = 0;
            if (!string.IsNullOrWhiteSpace(searchEntity.Visittimes))
            {
                int.TryParse(searchEntity.Visittimes, out aaaa);
            }
            var query = (from a in _context.IntentionCustomers
                     join b in listCode.Where(x => x.CodeTable == "IntentionCustomer" && x.CodeField == "khly")
                     on a.Khly equals b.CodeSn
@@ -223,7 +234,17 @@
                     join g in _context.Areas on a.City equals g.CodeId
                     join h in _context.Areas on a.AreaId equals h.CodeId
                     where a.RecStatus == "A"
                         join l in _context.IntentionVisits.Where(x => x.RecStatus == "A").GroupBy(q => new { q.Viscustomer }).Select(q => new
                         {
                             Viscustomer = q.Key.Viscustomer,
                             Visittimes = q.Count(),
                         })
                           on a.Id equals l.Viscustomer
                         into lsss
                         from lll in lsss.DefaultIfEmpty()
                         where a.RecStatus == "A"
                      && (string.IsNullOrWhiteSpace(searchEntity.Createtime) || (a.Createtime >= Createtimestart && a.Createtime <= Createtimeend))
                     && (string.IsNullOrWhiteSpace(searchEntity.Name) || a.Name.Contains(searchEntity.Name.Trim()))
                      && (string.IsNullOrWhiteSpace(searchEntity.Khly) || a.Khly == searchEntity.Khly.Trim())
@@ -239,6 +260,9 @@
                                
                                    && (string.IsNullOrWhiteSpace(searchEntity.Yixiangtime) || (a.Yixiangtime >= Yixiangtimestart && a.Yixiangtime <= Yixiangtimeend))
                                      && (string.IsNullOrWhiteSpace(searchEntity.Yixiang) || ( a.Yixiang == searchEntity.Yixiang.Trim() && (a.Ywjl == null || a.Ywjl == searchEntity.YwjlYx) ))
                                       && (aaaa <= 0 || lll.Visittimes >= aaaa)
                                      //&& (string.IsNullOrWhiteSpace(searchEntity.Shifouweixin) || a.Shifoutianjiaweixin == searchEntity.Shifouweixin.Trim())
                         select new IntentionCustomerDTO
                     {
@@ -288,6 +312,7 @@
                         Modifier = a.Modifier,
                         Modifytime = a.Modifytime,
                         CreatetimeName = a.Createtime.ToString("yyyy-MM-dd"),
                         Customertype = "档案客户",
                                 Yixiangtime = a.Yixiangtime,
                                 YixiangtimeName = a.Yixiangtime.HasValue? a.Yixiangtime.Value.ToString("yyyy-MM-dd"):"",
                                 Yixiang = a.Yixiang,
@@ -295,18 +320,52 @@
                                 DianxiaozhuanyuanName = fff.UserName,
                                 Zuijinzhuizongtime = a.Zuijinzhuizongtime,
                                 ZuijinzhuizongtimeName = a.Zuijinzhuizongtime.HasValue ? a.Zuijinzhuizongtime.Value.ToString("yyyy-MM-dd") : "",
                             }
                    ).OrderByDescending(x => x.Modifytime).ToList();
                             Visittimes = lll.Visittimes,
                         }
                    );
            if (!string.IsNullOrWhiteSpace(searchEntity.Shifouweixin))
            {
                query = query.Where( a=>a.Shifoutianjiaweixin == searchEntity.Shifouweixin.Trim()).ToList();
                query = query.Where( a=>a.Shifoutianjiaweixin == searchEntity.Shifouweixin.Trim());
            }
            if (!string.IsNullOrWhiteSpace(searchEntity.ShifouDianhua))
            {
                if (searchEntity.ShifouDianhua != "A")
                {
                    query = query.Where(a => a.Tel == null ||  a.Tel == "");
                }
                else
                {
                    query = query.Where(a => a.Tel != null && a.Tel != "");
                }
            }
            if (!string.IsNullOrWhiteSpace(searchEntity.Visittimes))
            {
                if (searchEntity.ShifouDianhua != "A")
                {
                    query = query.Where(a => a.Tel == null || a.Tel == "");
                }
                else
                {
                    query = query.Where(a => a.Tel != null && a.Tel != "");
                }
        //if (searchEntity.totalrows == 0)
            }
            //if (searchEntity.totalrows == 0)
            searchEntity.totalrows = query.Count();
        var lianlist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
        data.LoadData(searchEntity, lianlist);
        var lianlist = query.OrderByDescending(x => x.Modifytime).Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
            //foreach (var intentionCustomerDTO in lianlist)
            //{
            //    intentionCustomerDTO.Visittimes = _context.IntentionVisits.Count(x => x.RecStatus == "A" && x.Viscustomer == intentionCustomerDTO.Id);
            //}
            data.LoadData(searchEntity, lianlist);
        return data;
    }