| 
					
				 | 
			
			
				@@ -9053,52 +9053,49 @@ FROM 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         var airTotalStr = new StringBuilder(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         var airPriceStr = new StringBuilder(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        var cityTrafficLabel = new StringBuilder(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         //经济舱 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (_EnterExitCosts.SumJJC == 1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            airTotalStr.Append($"{_EnterExitCosts.OutsideJJPay:#0.00}元/人(经济舱)"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            airPriceStr.Append($"{_EnterExitCosts.AirJJ:#0.00}元/人(经济舱)"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            airTotalStr.AppendFormat($"{_EnterExitCosts.OutsideJJPay:#0.00}元/人(经济舱)"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            airPriceStr.AppendFormat($"{_EnterExitCosts.AirJJ:#0.00}元/人(经济舱)"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            cityTrafficLabel.AppendFormat("经济舱:{0:#0.00} 元/人 ", _EnterExitCosts.CityTranffic); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         //公务舱 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (_EnterExitCosts.SumGWC == 1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            airTotalStr.Append($"{_EnterExitCosts.OutsideGWPay:#0.00} 元/人(公务舱)"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            airPriceStr.Append($"{_EnterExitCosts.AirGW:#0.00} 元/人(公务舱)"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            airTotalStr.AppendFormat($"{_EnterExitCosts.OutsideGWPay:#0.00} 元/人(公务舱)"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            airPriceStr.AppendFormat($"{_EnterExitCosts.AirGW:#0.00} 元/人(公务舱)"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            cityTrafficLabel.AppendFormat("公务舱:{0:#0.00} 元/人 ", _EnterExitCosts.CityTranffic1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         //头等舱 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (_EnterExitCosts.SumTDC == 1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            airTotalStr.Append($"{_EnterExitCosts.OutsideTDPay:#0.00} 元/人(头等舱)"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            airPriceStr.Append($"{_EnterExitCosts.AirTD:#0.00} 元/人(头等舱)"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            airTotalStr.AppendFormat($"{_EnterExitCosts.OutsideTDPay:#0.00} 元/人(头等舱)"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            airPriceStr.AppendFormat($"{_EnterExitCosts.AirTD:#0.00} 元/人(头等舱)"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            cityTrafficLabel.AppendFormat("头等舱:{0:#0.00} 元/人 ", _EnterExitCosts.CityTranffic2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         //描述 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         var remarkLable = new StringBuilder(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         //第二项描述 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         remarkLable.Append("备注:"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        if (!string.IsNullOrEmpty(_EnterExitCosts.TwoItemRemark)) remarkLable.Append( _EnterExitCosts.TwoItemRemark); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if (!string.IsNullOrEmpty(_EnterExitCosts.TwoItemRemark)) remarkLable.AppendFormat( _EnterExitCosts.TwoItemRemark); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         //汇率描述 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (peiceItemCurrencyInfos.Any()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             remarkLable.AppendLine(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            remarkLable.Append("汇率描述:"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            remarkLable.AppendFormat("汇率描述:"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             foreach (var item in peiceItemCurrencyInfos) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                remarkLable.Append($"{item.CurrencyName}({item.CurrencyCode}):{item.Rate:#0.0000}  "); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                remarkLable.AppendFormat($"{item.CurrencyName}({item.CurrencyCode}):{item.Rate:#0.0000}  "); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        //城市交通费 处理 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        var cityTrafficLabel = new StringBuilder() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            .AppendFormat("  经济舱:{0:#0.00} 元/人", _EnterExitCosts.CityTranffic) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            .AppendFormat("  公务舱:{0:#0.00} 元/人", _EnterExitCosts.CityTranffic1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            .AppendFormat("  头等舱:{0:#0.00} 元/人", _EnterExitCosts.CityTranffic2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            .ToString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         dic.Add("AirTotalStr", airTotalStr.ToString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         dic.Add("AirPriceStr", airPriceStr.ToString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        dic.Add("CityTranffic", cityTrafficLabel); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        dic.Add("CityTranffic", cityTrafficLabel.ToString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         dic.Add("TwoItemRemark", remarkLable.ToString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         NodeCollection allTables = doc.GetChildNodes(NodeType.Table, true); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -28462,6 +28459,34 @@ ORDER BY 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         #region 会务流程 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /// <summary> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /// 会务流程 - 团组列表 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /// </summary> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /// <returns>团组基本信息、团组列表和会务基本信息列表</returns> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        [HttpGet] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        public async Task<IActionResult> ConferenceProceduresGroupNames() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            var conferenceTypeIds = new List<int>() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                302,  // 成都-会务活动 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                691   // 四川-会务活动 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            var groupList = await _sqlSugar.Queryable<Grp_DelegationInfo>() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .Where(x => x.IsDel == 0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .Where(x => conferenceTypeIds.Contains(x.TeamDid)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .OrderByDescending(x => x.VisitDate) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .Select(x => new {  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    x.Id,  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    x.TeamName, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    HasChildData = SqlFunc.Subqueryable<Grp_ConferenceProcedures>() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        .Where(child => child.DiId == x.Id) // 替换关联条件 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        .Any() // 判断子表是否存在数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .ToListAsync(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return Ok(JsonView(true, "SUCCESS", groupList)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         /// <summary> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         /// 会务流程 - 数据初始化 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         /// </summary> 
			 |