From f7a2d28869cc31c7dbe057a1d80dd40536d97fed Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期三, 08 三月 2023 15:45:33 +0800
Subject: [PATCH] 业务经理查询客户接口

---
 zhengcaioa/Services/CooperatecustomCustomerService.cs |  371 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 370 insertions(+), 1 deletions(-)

diff --git a/zhengcaioa/Services/CooperatecustomCustomerService.cs b/zhengcaioa/Services/CooperatecustomCustomerService.cs
index aaef706..c4bee87 100644
--- a/zhengcaioa/Services/CooperatecustomCustomerService.cs
+++ b/zhengcaioa/Services/CooperatecustomCustomerService.cs
@@ -195,7 +195,7 @@
         {
 
             var entity = _context.CooperatecustomCustomers.Find(id);
-            if(entity.RecStatus != "A")
+            if(entity == null || entity.RecStatus != "A")
             {
                 entity = new CooperatecustomCustomer();
             }
@@ -666,5 +666,374 @@
             }
             return cooperatecustomCustomerDTOs;
         }
+
+
+        public ResultDataEntity<CooperatecustomCustomerDTO> SearchByPagingAll(CooperatecustomCustomerDTOSearch searchEntity)
+        {
+
+
+
+            ResultDataEntity<CooperatecustomCustomerDTO> data = new ResultDataEntity<CooperatecustomCustomerDTO>();
+            List<CooperatecustomCustomerDTO> list = new List<CooperatecustomCustomerDTO>();
+
+
+
+
+            var listCode = (from a in _context.SysCodeDtls
+                            join b in _context.SysCodes
+                            on a.CodeId equals b.Id
+                            where a.RecStatus == "A"
+                                          && b.RecStatus == "A"
+                            select new CodeDataEntity()
+                            {
+                                CodeId = b.Id,
+                                CodeTable = b.CodeTable,
+                                CodeField = b.CodeField,
+                                CodeSn = a.CodeSn,
+                                Comments = a.Comments,
+                                Contents = a.Contents,
+                                RecStatus = a.RecStatus,
+                                Sort = a.Sort
+                            }
+                      );
+
+
+            DateTime Createtimestart = DateTime.Now;
+            DateTime Createtimeend = DateTime.Now;
+            if (!string.IsNullOrWhiteSpace(searchEntity.Createtime))
+            {
+                string[] Createtimes = searchEntity.Createtime.Split("|");
+                DateTime.TryParse(Createtimes[0], out Createtimestart);
+                DateTime.TryParse(Createtimes[1], out Createtimeend);
+                Createtimeend = Createtimeend.AddDays(1);
+            }
+
+
+            var query = (from a in _context.CooperatecustomCustomers
+                         join b in listCode.Where(x => x.CodeTable == "CooperatecustomCustomer" && x.CodeField == "khly")
+                         on a.Khly equals b.CodeSn
+                         into bsss
+                         from bbb in bsss.DefaultIfEmpty()
+
+                         join c in listCode.Where(x => x.CodeTable == "CooperatecustomCustomer" && x.CodeField == "hyfl")
+                         on a.Hyfl equals c.CodeSn
+                          into csss
+                         from ccc in csss.DefaultIfEmpty()
+
+                         join d in listCode.Where(x => x.CodeTable == "CooperatecustomCustomer" && x.CodeField == "khlx")
+                        on a.Khlx equals d.CodeSn
+                         into dsss
+                         from ddd in dsss.DefaultIfEmpty()
+
+
+                         join e in _context.PltUsers.Where(x => x.RecStatus == "A" && x.Zhiwustatus == "A" && x.IsYwjl == "A")
+                         on a.Ywjl equals e.Id
+                         into esss
+                         from abi in esss.DefaultIfEmpty()
+
+
+                         join i in _context.CooperOrders.Where(x => x.RecStatus == "A" && x.ChedanStatus != "A").GroupBy(q => new { q.Khdw }).Select(q => new
+                         {
+                             Khdw = q.Key.Khdw,
+                             Moneycount = q.Sum(i => i.Money),
+                             Ordercount = q.Count(),
+                         }
+                         )
+                         on a.Id equals i.Khdw
+                         into isss
+                         from iii in isss.DefaultIfEmpty()
+
+
+
+                         join f in _context.Areas on a.Sheng equals f.CodeId
+                            into fsss
+                         from fff in fsss.DefaultIfEmpty()
+
+
+                         join g in _context.Areas on a.City equals g.CodeId
+                            into gsss
+                         from ggg in gsss.DefaultIfEmpty()
+
+
+                         join h in _context.Areas on a.AreaId equals h.CodeId
+                            into hsss
+                         from hhh in hsss.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())
+                           && (string.IsNullOrWhiteSpace(searchEntity.Hyfl) || a.Hyfl == searchEntity.Hyfl.Trim())
+                            && (string.IsNullOrWhiteSpace(searchEntity.Khlx) || a.Khlx == searchEntity.Khlx.Trim())
+                              //&& (string.IsNullOrWhiteSpace(searchEntity.Ywjl) || a.Ywjl == searchEntity.Ywjl.Trim())
+                              && (string.IsNullOrWhiteSpace(searchEntity.Sheng) || a.Sheng == searchEntity.Sheng.Trim())
+                               && (string.IsNullOrWhiteSpace(searchEntity.City) || a.City == searchEntity.City.Trim())
+                                && (string.IsNullOrWhiteSpace(searchEntity.AreaId) || a.AreaId == searchEntity.AreaId.Trim())
+                                 && (string.IsNullOrWhiteSpace(searchEntity.Shifouweixin) || a.Shifoutianjiaweixin == searchEntity.Shifouweixin.Trim())
+                                 && (string.IsNullOrWhiteSpace(searchEntity.HuiyuanId) || a.HuiyuanId == searchEntity.HuiyuanId.Trim())
+
+                         select new CooperatecustomCustomerDTO
+                         {
+                             Id = a.Id,
+                             Sheng = a.Sheng,
+                             City = a.City,
+                             AreaId = a.AreaId,
+                             Khly = a.Khly,
+                             Hyfl = a.Hyfl,
+                             Khlx = a.Khlx,
+                             Ywjl = a.Ywjl,
+                             ShengName = fff.Name + "-" + ggg.Name + "-" + hhh.Name,
+                             CityName = ggg.Name,
+                             AreaIdName = hhh.Name,
+                             KhlyName = bbb.Comments,
+                             HyflName = ccc.Comments,
+                             KhlxName = ddd.Comments,
+                             YwjlName = abi.UserName,
+                             Name = a.Name,
+                             Postal = a.Postal,
+                             Address = a.Address,
+                             Url = a.Url,
+                             Tel = a.Tel,
+                             Ordercount = iii.Ordercount.ToString(),
+                             Moneycount = iii.Moneycount.ToString(),
+                             Moneycountde = iii.Moneycount,
+                             Phone = a.Phone,
+                             Qq = a.Qq,
+                             Email = a.Email,
+                             FName = a.FName,
+                             FTel = a.FTel,
+
+                             FQq = a.FQq,
+                             YwName = a.YwName,
+                             YwTel = a.YwTel,
+                             YwQq = a.YwQq,
+                             JgCode = a.JgCode,
+                             Khh = a.Khh,
+                             Count = a.Count,
+                             ShrName = a.ShrName,
+                             ShrTel = a.ShrTel,
+                             ShrAddress = a.ShrAddress,
+                             Remark = a.Remark,
+
+                             RecStatus = a.RecStatus,
+                             Modifier = a.Modifier,
+                             Modifytime = a.Modifytime,
+                             CreatetimeName = a.Createtime.ToString("yyyy-MM-dd"),
+                             Weixin = a.Weixin,
+                             Shifoutianjiaweixin = a.Shifoutianjiaweixin,
+                             HuiyuanId = a.HuiyuanId,
+                             Weixiner = a.Weixiner,
+                             Weixintime = a.Weixintime,
+                             Yufukuan = a.Yufukuan ?? 0,
+                             Shouxinedu = a.Shouxinedu ?? 0,
+                             Shenyushouxin = a.Shenyushouxin ?? 0,
+                             YufukuanName = a.Yufukuan.HasValue ? a.Yufukuan.Value.ToString("f2") : "",
+                             ShouxineduName = a.Shouxinedu.HasValue ? a.Shouxinedu.Value.ToString("f2") : "",
+                             ShenyushouxinName = a.Shenyushouxin.HasValue ? a.Shenyushouxin.Value.ToString("f2") : "",
+                             Taocanjianshu = a.Taocanjianshu ?? 0,
+                             Customertype = "鍚堜綔瀹㈡埛",
+                         }
+                        );
+
+            if (!string.IsNullOrWhiteSpace(searchEntity.Ywjl))
+            {
+                if (searchEntity.Ywjl != "11111")
+                {
+                    query = query.Where(a => a.Ywjl == searchEntity.Ywjl.Trim());
+                }
+                else
+                {
+                    query = query.Where(a => a.Ywjl == null);
+                }
+            }
+
+
+
+            var queryinter = (from a in _context.IntentionCustomers
+                         join b in listCode.Where(x => x.CodeTable == "CooperatecustomCustomer" && x.CodeField == "khly")
+                         on a.Khly equals b.CodeSn
+                         into bsss
+                         from bbb in bsss.DefaultIfEmpty()
+
+                         join c in listCode.Where(x => x.CodeTable == "CooperatecustomCustomer" && x.CodeField == "hyfl")
+                         on a.Hyfl equals c.CodeSn
+                          into csss
+                         from ccc in csss.DefaultIfEmpty()
+
+                         join d in listCode.Where(x => x.CodeTable == "CooperatecustomCustomer" && x.CodeField == "khlx")
+                        on a.Khlx equals d.CodeSn
+                         into dsss
+                         from ddd in dsss.DefaultIfEmpty()
+
+
+                         join e in _context.PltUsers.Where(x => x.RecStatus == "A" && x.Zhiwustatus == "A" && x.IsYwjl == "A")
+                         on a.Ywjl equals e.Id
+                         into esss
+                         from abi in esss.DefaultIfEmpty()
+
+
+                         join i in _context.CooperOrders.Where(x => x.RecStatus == "A" && x.ChedanStatus != "A").GroupBy(q => new { q.Khdw }).Select(q => new
+                         {
+                             Khdw = q.Key.Khdw,
+                             Moneycount = q.Sum(i => i.Money),
+                             Ordercount = q.Count(),
+                         }
+                         )
+                         on a.Id equals i.Khdw
+                         into isss
+                         from iii in isss.DefaultIfEmpty()
+
+
+
+                         join f in _context.Areas on a.Sheng equals f.CodeId
+                            into fsss
+                         from fff in fsss.DefaultIfEmpty()
+
+
+                         join g in _context.Areas on a.City equals g.CodeId
+                            into gsss
+                         from ggg in gsss.DefaultIfEmpty()
+
+
+                         join h in _context.Areas on a.AreaId equals h.CodeId
+                            into hsss
+                         from hhh in hsss.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())
+                           && (string.IsNullOrWhiteSpace(searchEntity.Hyfl) || a.Hyfl == searchEntity.Hyfl.Trim())
+                            && (string.IsNullOrWhiteSpace(searchEntity.Khlx) || a.Khlx == searchEntity.Khlx.Trim())
+                              //&& (string.IsNullOrWhiteSpace(searchEntity.Ywjl) || a.Ywjl == searchEntity.Ywjl.Trim())
+                              && (string.IsNullOrWhiteSpace(searchEntity.Sheng) || a.Sheng == searchEntity.Sheng.Trim())
+                               && (string.IsNullOrWhiteSpace(searchEntity.City) || a.City == searchEntity.City.Trim())
+                                && (string.IsNullOrWhiteSpace(searchEntity.AreaId) || a.AreaId == searchEntity.AreaId.Trim())
+                                 && (string.IsNullOrWhiteSpace(searchEntity.Shifouweixin) || a.Shifoutianjiaweixin == searchEntity.Shifouweixin.Trim())
+                                 && (string.IsNullOrWhiteSpace(searchEntity.HuiyuanId) || a.HuiyuanId == searchEntity.HuiyuanId.Trim())
+
+                         select new CooperatecustomCustomerDTO
+                         {
+                             Id = a.Id,
+                             Sheng = a.Sheng,
+                             City = a.City,
+                             AreaId = a.AreaId,
+                             Khly = a.Khly,
+                             Hyfl = a.Hyfl,
+                             Khlx = a.Khlx,
+                             Ywjl = a.Ywjl,
+                             ShengName = fff.Name + "-" + ggg.Name + "-" + hhh.Name,
+                             CityName = ggg.Name,
+                             AreaIdName = hhh.Name,
+                             KhlyName = bbb.Comments,
+                             HyflName = ccc.Comments,
+                             KhlxName = ddd.Comments,
+                             YwjlName = abi.UserName,
+                             Name = a.Name,
+                             Postal = a.Postal,
+                             Address = a.Address,
+                             Url = a.Url,
+                             Tel = a.Tel,
+                             Ordercount = iii.Ordercount.ToString(),
+                             Moneycount = iii.Moneycount.ToString(),
+                             Moneycountde = iii.Moneycount,
+                             Phone = a.Phone,
+                             Qq = a.Qq,
+                             Email = a.Email,
+                             FName = a.FName,
+                             FTel = a.FTel,
+
+                             FQq = a.FQq,
+                             YwName = a.YwName,
+                             YwTel = a.YwTel,
+                             YwQq = a.YwQq,
+                             JgCode = a.JgCode,
+                             Khh = a.Khh,
+                             Count = a.Count,
+                             ShrName = a.ShrName,
+                             ShrTel = a.ShrTel,
+                             ShrAddress = a.ShrAddress,
+                             Remark = a.Remark,
+
+                             RecStatus = a.RecStatus,
+                             Modifier = a.Modifier,
+                             Modifytime = a.Modifytime,
+                             CreatetimeName = a.Createtime.ToString("yyyy-MM-dd"),
+                             Weixin = a.Weixin,
+                             Shifoutianjiaweixin = a.Shifoutianjiaweixin,
+                             HuiyuanId = a.HuiyuanId,
+                             Weixiner = a.Weixiner,
+                             Weixintime = a.Weixintime,
+                             Customertype = "妗f瀹㈡埛",
+                         }
+                      );
+
+            if (!string.IsNullOrWhiteSpace(searchEntity.Ywjl))
+            {
+                if (searchEntity.Ywjl != "11111")
+                {
+                    queryinter = queryinter.Where(a => a.Ywjl == searchEntity.Ywjl.Trim());
+                }
+                else
+                {
+                    queryinter = queryinter.Where(a => a.Ywjl == null);
+                }
+            }
+            var chaxun    = query.ToList().Union(queryinter.ToList());
+
+
+
+            searchEntity.totalrows = chaxun.Count();
+             
+            var lianlist = chaxun.OrderByDescending(x => x.Modifytime).Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
+           
+
+          
+
+
+
+            data.LoadData(searchEntity, lianlist);
+            return data;
+        }
+
+
+        public ResultEntity saveKhlx(CooperatecustomCustomerDTO cooperatecustomCustomerDTO)
+        {
+            ResultEntity resultEntity = new ResultEntity();
+            try
+            {
+                
+
+
+             
+
+ 
+                    var updateproject = _context.CooperatecustomCustomers.Find(cooperatecustomCustomerDTO.Id);
+
+                   
+                    updateproject.Khlx = cooperatecustomCustomerDTO.Khlx;
+                  
+                    updateproject.Modifier = cooperatecustomCustomerDTO.Modifier;
+                    updateproject.Modifytime = cooperatecustomCustomerDTO.Modifytime;
+                   
+                
+                _context.SaveChanges();
+ 
+
+                resultEntity.ReturnID = cooperatecustomCustomerDTO.Id;
+                resultEntity.Result = true;
+            }
+            catch (Exception ex)
+            {
+                resultEntity.Result = false;
+                resultEntity.Message = "淇濆瓨澶辫触锛岃鑱旂郴绠$悊鍛�";
+
+            }
+            return resultEntity;
+        }
     }
 }

--
Gitblit v1.9.1