Browse Source

保险Api部分修改

yuanrf 1 year ago
parent
commit
2f465693d8

+ 122 - 35
OASystem/OASystem.Infrastructure/Repositories/Groups/CustomersRepository.cs

@@ -3,6 +3,7 @@ using NPOI.POIFS.Crypt.Dsig;
 using OASystem.Domain;
 using OASystem.Domain.Dtos.Financial;
 using OASystem.Domain.Dtos.Groups;
+using OASystem.Domain.Entities.Customer;
 using OASystem.Domain.Entities.Financial;
 using OASystem.Domain.Entities.Groups;
 using OASystem.Domain.ViewModels.Financial;
@@ -71,6 +72,15 @@ namespace OASystem.Infrastructure.Repositories.Groups
                                                     left Join Sys_SetData s on  h.Currency=s.Id
                                                     left Join Sys_Users u on u.Id=h.CreateUserId {0} order by c.IsAuditGM,c.PayPercentage,h.CreateTime desc", sqlWhere);
                     List<CustomersView> Customers = _sqlSugar.SqlQueryable<CustomersView>(sql).ToList();
+
+                    var parseIntValue = 0;
+                    var CrmIds = (from item in Customers
+                                 where item.ClientName.Contains(",") || int.TryParse(item.ClientName, out parseIntValue)
+                                 select item.ClientName).ToList();
+
+                    sql = string.Format("SELECT * FROM Crm_DeleClient cdc where id in ({0}) and IsDel  = 0",string.Join(',', CrmIds));
+                    List<Crm_DeleClient> clietArr = _sqlSugar.SqlQueryable<Crm_DeleClient>(sql).ToList();
+
                     foreach (var item in Customers)
                     {
                         if (item.IsAuditGM == 0) item.IsAuditGMStr = "未审核";
@@ -81,6 +91,38 @@ namespace OASystem.Infrastructure.Repositories.Groups
                         if (item.OrbitalPrivateTransfer == 0) item.OrbitalPrivateTransferStr = "公转";
                         else if (item.OrbitalPrivateTransfer == 1) item.OrbitalPrivateTransferStr = "私转";
 
+                        if (item.ClientName.Contains(","))
+                        {
+                            var splitArr = item.ClientName.Split(',');
+                            var name = string.Empty;
+                            foreach (var client in splitArr)
+                            {
+                                if (int.TryParse(client, out parseIntValue))
+                                {
+                                   var clientObject = clietArr.Find(x => x.Id == parseIntValue);
+                                   name += (clientObject?.LastName + clientObject?.FirstName + " ");
+                                }
+                            }
+
+                            if (!string.IsNullOrWhiteSpace(name))
+                            {
+                                item.ClientName = name;
+                            }
+                            continue;
+                        }
+
+                        if (int.TryParse(item.ClientName, out parseIntValue))
+                        {
+                            var name = string.Empty;
+                            var clientObject = clietArr.Find(x => x.Id == parseIntValue);
+                            name += (clientObject?.LastName + clientObject?.FirstName);
+
+                            if (!string.IsNullOrWhiteSpace(name))
+                            {
+                                item.ClientName = name;
+                            }
+                            continue;
+                        }
                     }
                     return result = new Result() { Code = 0, Msg = "查询成功!", Data = Customers };
                 }
@@ -96,6 +138,16 @@ namespace OASystem.Infrastructure.Repositories.Groups
                                                 ) temp Where RowNumber Between {1} and {2}", sqlWhere, startIndex, endIndex);
 
                     List<CustomersView> Customers = _sqlSugar.SqlQueryable<CustomersView>(sql).ToList();
+
+
+                    var parseIntValue = 0;
+                    var CrmIds = (from item in Customers
+                                  where item.ClientName.Contains(",") || int.TryParse(item.ClientName, out parseIntValue)
+                                  select item.ClientName).ToList();
+
+                    sql = string.Format("SELECT * FROM Crm_DeleClient cdc where id in ({0}) and IsDel  = 0", string.Join(',', CrmIds));
+                    List<Crm_DeleClient> clietArr = _sqlSugar.SqlQueryable<Crm_DeleClient>(sql).ToList();
+
                     foreach (var item in Customers)
                     {
                         if (item.IsAuditGM == 0) item.IsAuditGMStr = "未审核";
@@ -105,6 +157,41 @@ namespace OASystem.Infrastructure.Repositories.Groups
 
                         if (item.OrbitalPrivateTransfer == 0) item.OrbitalPrivateTransferStr = "公转";
                         else if (item.OrbitalPrivateTransfer == 1) item.OrbitalPrivateTransferStr = "私转";
+
+
+                        if (item.ClientName.Contains(","))
+                        {
+                            var splitArr = item.ClientName.Split(',');
+                            var name = string.Empty;
+                            foreach (var client in splitArr)
+                            {
+                                if (int.TryParse(client, out parseIntValue))
+                                {
+                                    var clientObject = clietArr.Find(x => x.Id == parseIntValue);
+                                    name += (clientObject?.LastName + clientObject?.FirstName + " ");
+                                }
+                            }
+
+                            if (!string.IsNullOrWhiteSpace(name))
+                            {
+                                item.ClientName = name;
+                            }
+                            continue;
+                        }
+
+                        if (int.TryParse(item.ClientName, out parseIntValue))
+                        {
+                            var name = string.Empty;
+                            var clientObject = clietArr.Find(x => x.Id == parseIntValue);
+                            name += (clientObject?.LastName + clientObject?.FirstName);
+
+                            if (!string.IsNullOrWhiteSpace(name))
+                            {
+                                item.ClientName = name;
+                            }
+                            continue;
+                        }
+
                     }
                     string CountSql = string.Format(@"Select COUNT(1) as Count From (	
                                                     select h.Id,h.ClientName,InsuranceCosts,Currency,s.Name as CurrencyStr,Attachment,c.OrbitalPrivateTransfer,u.CnName,c.IsAuditGM
@@ -213,45 +300,45 @@ namespace OASystem.Infrastructure.Repositories.Groups
 
                 //卡类型
                 List<Sys_SetData> BankCard = _sqlSugar.Queryable<Sys_SetData>().Where(a => a.STid == 15 && a.IsDel == 0).ToList();
-                List<SetDataCurrencyInfoView> _BankCard = _mapper.Map<List<SetDataCurrencyInfoView>>(BankCard).Where(s=> (s.Currency ?? "") == "CNY" ).ToList();
+                List<SetDataCurrencyInfoView> _BankCard = _mapper.Map<List<SetDataCurrencyInfoView>>(BankCard);
 
                 //保险名称
-                //List<Grp_InsuranceCost> _InsuranceCosts=_sqlSugar.Queryable<Grp_InsuranceCost>().Where(a=>a.IsDel==0).ToList();
-                //List<InsuranceCostView> insuranceCostViews = new List<InsuranceCostView>();
-                //foreach (var item in _InsuranceCosts)
-                //{
-                //    InsuranceCostView costView=new InsuranceCostView();
-                //    costView.Id=item.Id;
-                //    costView.GName=item.GName;
-                //    costView.Balance = 0.00M;
-                //    string CountSql = string.Format(@"select sum(InsuranceCosts) as CountCost from Grp_Customers where isdel=0 and Iid=" + item.Id);
-                //    DataCountCost dataCount = _sqlSugar.SqlQueryable<DataCountCost>(CountSql).First();
-                //    costView.Balance = Math.Round(item.RechargeCost - dataCount.CountCost, 2);
-                //    insuranceCostViews.Add(costView);
-                //}
+                List<Grp_InsuranceCost> _InsuranceCosts=_sqlSugar.Queryable<Grp_InsuranceCost>().Where(a=>a.IsDel==0).ToList();
+                List<InsuranceCostView> insuranceCostViews = new List<InsuranceCostView>();
+                foreach (var item in _InsuranceCosts)
+                {
+                    InsuranceCostView costView=new InsuranceCostView();
+                    costView.Id=item.Id;
+                    costView.GName=item.GName;
+                    costView.Balance = 0.00M;
+                    string CountSql = string.Format(@"select sum(InsuranceCosts) as CountCost from Grp_Customers where isdel=0 and Iid=" + item.Id);
+                    DataCountCost dataCount = _sqlSugar.SqlQueryable<DataCountCost>(CountSql).First();
+                    costView.Balance = Math.Round(item.RechargeCost - dataCount.CountCost, 2);
+                    insuranceCostViews.Add(costView);
+                }
+
                 //币种
-                //GeneralTeamRateInfoDto PostGroupTeamRatedto = new GeneralTeamRateInfoDto();
-                //PostGroupTeamRatedto.DiId = dto.DiId;
-                //PostGroupTeamRatedto.CTable = 82;
-                //PostGroupTeamRatedto.PortType = dto.PortType;
-                //Result teamRateDescAddCurrencyIdViews = _hotel.PostGroupTeamRateByDiIdAndCTableId(PostGroupTeamRatedto);
+                GeneralTeamRateInfoDto PostGroupTeamRatedto = new GeneralTeamRateInfoDto();
+                PostGroupTeamRatedto.DiId = dto.DiId;
+                PostGroupTeamRatedto.CTable = 82;
+                PostGroupTeamRatedto.PortType = dto.PortType;
+                Result teamRateDescAddCurrencyIdViews = _hotel.PostGroupTeamRateByDiIdAndCTableId(PostGroupTeamRatedto);
                 List<TeamRateDescAddCurrencyIdView> Currency = new List<TeamRateDescAddCurrencyIdView>();
-                TeamRateDescAddCurrencyIdView cny = new TeamRateDescAddCurrencyIdView() { CurrencyCode = "CNY", CurrencyId = 836, CurrencyName = "人民币", Rate = 1 }; //保险修改,只要人民币
-                Currency.Add(cny);
-                //if (teamRateDescAddCurrencyIdViews.Code == 0)
-                //{
-                //    Currency = teamRateDescAddCurrencyIdViews.Data;
-                //}
-
-                //insuranceCost = insuranceCostViews,
-                    var data = new
-                    {
-                        Payment = _Payment,
-                        CurrencyList = Currency,
-                        BankCard = _BankCard,
-                    };
-                    return result = new Result() { Code = 0, Msg = "查询成功", Data = data };
-                
+                if (teamRateDescAddCurrencyIdViews.Code == 0)
+                {
+                    Currency = teamRateDescAddCurrencyIdViews.Data;
+                }
+
+                var data = new
+                {
+                    Payment = _Payment,
+                    CurrencyList = Currency,
+                    BankCard = _BankCard,
+                    insuranceCost = insuranceCostViews,
+                };
+
+                return result = new Result() { Code = 0, Msg = "查询成功", Data = data };
+
             }
             catch (Exception ex)
             {