username@email.com
2022-08-27 6e2b929cf381e2320ba6e7dec56c0371124d2b51
zhengcaioa/Services/CooperatecustomCustomerService.cs
@@ -98,7 +98,42 @@
                    updateproject.Shifoutianjiaweixin = cooperatecustomCustomer.Shifoutianjiaweixin;
                    updateproject.Weixintime = cooperatecustomCustomer.Weixintime;
                    updateproject.Weixiner = cooperatecustomCustomer.Weixiner;
                    updateproject.Shouxinedu = cooperatecustomCustomer.Shouxinedu;
                    updateproject.Taocanjianshu = cooperatecustomCustomer.Taocanjianshu;
                }
                _context.SaveChanges();
                resultEntity.ReturnID = cooperatecustomCustomer.Id;
                resultEntity.Result = true;
            }
            catch (Exception ex)
            {
                resultEntity.Result = false;
                resultEntity.Message = "保存失败,请联系管理员";
            }
            return resultEntity;
        }
        public ResultEntity saveyufukuan(CooperatecustomCustomerDTO cooperatecustomCustomerDTO)
        {
            ResultEntity resultEntity = new ResultEntity();
            try
            {
                var cooperatecustomCustomer = _mapper.Map<CooperatecustomCustomer>(cooperatecustomCustomerDTO);
                    var updateproject = _context.CooperatecustomCustomers.Find(cooperatecustomCustomer.Id);
                    updateproject.Yufukuan = cooperatecustomCustomer.Yufukuan;
                    updateproject.Shenyushouxin = cooperatecustomCustomer.Shenyushouxin;
                    updateproject.Shouxinedu = cooperatecustomCustomer.Shouxinedu;
                _context.SaveChanges();
                resultEntity.ReturnID = cooperatecustomCustomer.Id;
@@ -168,32 +203,59 @@
                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
                         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))
@@ -205,7 +267,7 @@
                              && (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.Shifouweixin) || a.Shifoutianjiaweixin == searchEntity.Shifouweixin.Trim())
                                 && (string.IsNullOrWhiteSpace(searchEntity.HuiyuanId) || a.HuiyuanId == searchEntity.HuiyuanId.Trim())
                         select new CooperatecustomCustomerDTO
@@ -218,12 +280,12 @@
                             Hyfl = a.Hyfl,
                             Khlx = a.Khlx,
                             Ywjl = a.Ywjl,
                             ShengName = f.Name + "-" + g.Name+ "-" + h.Name,
                             CityName = g.Name,
                             AreaIdName = h.Name,
                             KhlyName = b.Comments,
                             HyflName = c.Comments,
                             KhlxName = d.Comments,
                             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,
@@ -232,6 +294,7 @@
                             Tel = a.Tel,
                             Ordercount = iii.Ordercount.ToString(),
                             Moneycount = iii.Moneycount.ToString(),
                             Moneycountde = iii.Moneycount,
                             Phone = a.Phone,
                             Qq = a.Qq,
                             Email = a.Email,
@@ -259,14 +322,29 @@
                             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,
                         }
                        ).OrderByDescending(x => x.Modifytime).ToList();
            if (searchEntity.totalrows == 0)
            //if (searchEntity.totalrows == 0)
                searchEntity.totalrows = query.Count();
            data.Heji1 = Math.Round(query.Sum(x => x.Yufukuan) ?? 0, 2);
            data.Heji2 = Math.Round(query.Sum(x => x.Shouxinedu) ?? 0, 2);
            data.Heji3 = Math.Round(query.Sum(x => x.Shenyushouxin) ?? 0, 2);
            data.Heji4 = Math.Round(query.Sum(x => x.Moneycountde) ?? 0, 2);
            var lianlist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
            data.DangyeHeji1 = Math.Round(lianlist.Sum(x => x.Yufukuan) ?? 0, 2);
            data.DangyeHeji2 = Math.Round(lianlist.Sum(x => x.Shouxinedu) ?? 0, 2);
            data.DangyeHeji3 = Math.Round(lianlist.Sum(x => x.Shenyushouxin) ?? 0, 2);
            data.DangyeHeji4 = Math.Round(lianlist.Sum(x => x.Moneycountde) ?? 0, 2);
            data.LoadData(searchEntity, lianlist);
            return data;
        }
@@ -303,12 +381,22 @@
        /// 获取所有有效合作客户
        /// </summary>
        /// <returns></returns>
        public List<CooperatecustomCustomerDTO> GetList()
        public List<CooperatecustomCustomerDTO> GetList(string HuiyuanId = "", string Name = "")
        {
            var listPosition = _context.CooperatecustomCustomers.Where(r => r.RecStatus == "A").ToList();
            if (!string.IsNullOrEmpty(HuiyuanId))
            {
                listPosition = listPosition.Where(x => x.HuiyuanId == HuiyuanId).ToList();
            }
            if (!string.IsNullOrEmpty(Name))
            {
                listPosition = listPosition.Where(x => x.Name == Name).ToList();
            }
            var list = _mapper.Map<List<CooperatecustomCustomerDTO>>(listPosition);
            return list;
        }