|  | @@ -1,4 +1,5 @@
 | 
	
		
			
				|  |  | -using OASystem.Domain.Dtos.Groups;
 | 
	
		
			
				|  |  | +using Aspose.Words.Lists;
 | 
	
		
			
				|  |  | +using OASystem.Domain.Dtos.Groups;
 | 
	
		
			
				|  |  |  using OASystem.Domain.Entities.Groups;
 | 
	
		
			
				|  |  |  using OASystem.Domain.ViewModels.Groups;
 | 
	
		
			
				|  |  |  using OASystem.Domain.ViewModels.Resource;
 | 
	
	
		
			
				|  | @@ -54,7 +55,7 @@ From DelegationInfo With(Nolock) {2}
 | 
	
		
			
				|  |  |              return rst;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -        public List<DelegationVisaPersonView> GetDelegationPersonList(int diid)
 | 
	
		
			
				|  |  | +        public List<DelegationVisaProgressView> GetDelegationProgressList(int diid)
 | 
	
		
			
				|  |  |          {
 | 
	
		
			
				|  |  |              ChangeDataBase(DBEnum.OA2014DB);
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -64,27 +65,100 @@ Diid,
 | 
	
		
			
				|  |  |  LastName,
 | 
	
		
			
				|  |  |  [Name] as 'FirstName'
 | 
	
		
			
				|  |  |  From DeleClient With(Nolock) Where Diid = {0} And IsDel = 0 ", diid);
 | 
	
		
			
				|  |  | -            List<DelegationVisaPersonView> clientList = _sqlSugar.SqlQueryable<DelegationVisaPersonView>(sqlDeleClient).ToList();
 | 
	
		
			
				|  |  | +            List<DelegationVisaProgressView> clientList = _sqlSugar.SqlQueryable<DelegationVisaProgressView>(sqlDeleClient).ToList();
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |              string sqlDelegation = string.Format(@" Select * From DelegationInfo With(Nolock) Where Id = {0} ", diid);
 | 
	
		
			
				|  |  |              OA2021_DelegationInfo delegationInfo = _sqlSugar.SqlQueryable<OA2021_DelegationInfo>(sqlDelegation).First();
 | 
	
		
			
				|  |  | -            string countryName = delegationInfo.VisitCountry;
 | 
	
		
			
				|  |  | +            //string countryName = delegationInfo.VisitCountry;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +            #region 检查与配置
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            #region 配置
 | 
	
		
			
				|  |  | +            ChangeDataBase(DBEnum.OA2023DB);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +            string sqlCheck = string.Format(@" Select * From Grp_VisaProgressCustomer With(Nolock) Where DiId = {0} ", diid);
 | 
	
		
			
				|  |  | +            List<Grp_VisaProgressCustomer> listVisaPro = _sqlSugar.SqlQueryable<Grp_VisaProgressCustomer>(sqlCheck).ToList();
 | 
	
		
			
				|  |  | +            if (listVisaPro.Count < 1)
 | 
	
		
			
				|  |  | +            {
 | 
	
		
			
				|  |  | +                //listVisaPro = new List<Grp_VisaProgressCustomer>(initVisitCountry(diid, delegationInfo));
 | 
	
		
			
				|  |  | +                initVisitCountry(diid, delegationInfo);
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  |              #endregion
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            return null;
 | 
	
		
			
				|  |  | +            string sqlView1 = string.Format(@" Select 
 | 
	
		
			
				|  |  | +Id as 'ProgressViewId',
 | 
	
		
			
				|  |  | +DiId,
 | 
	
		
			
				|  |  | +CustomerId,
 | 
	
		
			
				|  |  | +LastName,
 | 
	
		
			
				|  |  | +FirstName,
 | 
	
		
			
				|  |  | +Country,
 | 
	
		
			
				|  |  | +WorkStatus as 'StatusSign'
 | 
	
		
			
				|  |  | +From Grp_VisaProgressCustomer With(Nolock) Where DiId = {0} And IsDel = 0 ", diid);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            List<DelegationVisaProgressView> result = _sqlSugar.SqlQueryable<DelegationVisaProgressView>(sqlView1).ToList();
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            //查询各子项行数
 | 
	
		
			
				|  |  | +            foreach (var pro in result)
 | 
	
		
			
				|  |  | +            {
 | 
	
		
			
				|  |  | +                string sqlCheckCount = string.Format(@" Select PicType,Count(PicType) PicTypeCount 
 | 
	
		
			
				|  |  | +From Grp_VisaProgressCustomerPicture Where VisaProgressCustomerId = {0}
 | 
	
		
			
				|  |  | +Group by PicType Order By PicType ", pro.ProgressViewId);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                List<dynamic> tempList = _sqlSugar.SqlQueryable<dynamic>(sqlCheckCount).ToList();
 | 
	
		
			
				|  |  | +                DelegationVisaPicCountList countList = new DelegationVisaPicCountList();
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                foreach (var item in tempList)
 | 
	
		
			
				|  |  | +                {
 | 
	
		
			
				|  |  | +                    int tempCount = item.PicTypeCount;
 | 
	
		
			
				|  |  | +                    switch (item.PicType)
 | 
	
		
			
				|  |  | +                    {
 | 
	
		
			
				|  |  | +                        case 0: countList.FirstPageCount = tempCount; break;
 | 
	
		
			
				|  |  | +                        case 1: countList.DocumentsCount = tempCount; break;
 | 
	
		
			
				|  |  | +                        case 2: countList.ExemptionCount = tempCount; break;
 | 
	
		
			
				|  |  | +                        case 3: countList.DispatchCount = tempCount; break;
 | 
	
		
			
				|  |  | +                        case 4: countList.VisaCount = tempCount; break;
 | 
	
		
			
				|  |  | +                        case 5: countList.InvoiceCount = tempCount; break;
 | 
	
		
			
				|  |  | +                        default:break;
 | 
	
		
			
				|  |  | +                    }
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +                countList.totalCount();
 | 
	
		
			
				|  |  | +                pro.PicCountList = countList;
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            return result;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -        public int initVisitCountry(int diid)
 | 
	
		
			
				|  |  | +        public void initVisitCountry(int diid, OA2021_DelegationInfo delegationInfo)
 | 
	
		
			
				|  |  |          {
 | 
	
		
			
				|  |  | +            ChangeDataBase(DBEnum.OA2014DB);
 | 
	
		
			
				|  |  | +            string sqlDeleClient = String.Format(@" Select * From DeleClient With(Nolock) Where diid = {0} ", diid);
 | 
	
		
			
				|  |  | +            List<OA2021_DeleClient> listDeleClient = _sqlSugar.SqlQueryable<OA2021_DeleClient>(sqlDeleClient).ToList();
 | 
	
		
			
				|  |  |              ChangeDataBase(DBEnum.OA2023DB);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            string sqlCheck = string.Format(@" Select * From  ");
 | 
	
		
			
				|  |  | +            List<Grp_VisaProgressCustomer> listVisaCustomer = new List<Grp_VisaProgressCustomer>();
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            string countryName = delegationInfo.VisitCountry;
 | 
	
		
			
				|  |  | +            string[] countrys = Regex.Replace(countryName, @"[,,|-、\s丶]", ",", RegexOptions.IgnoreCase).Split(',');
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            foreach (var client in listDeleClient)
 | 
	
		
			
				|  |  | +            {
 | 
	
		
			
				|  |  | +                foreach (string cname in countrys)
 | 
	
		
			
				|  |  | +                {
 | 
	
		
			
				|  |  | +                    Grp_VisaProgressCustomer item = new Grp_VisaProgressCustomer();
 | 
	
		
			
				|  |  | +                    item.Country = cname;
 | 
	
		
			
				|  |  | +                    item.CreateUserId = -3;
 | 
	
		
			
				|  |  | +                    item.CustomerId = 0;
 | 
	
		
			
				|  |  | +                    item.DiId = diid;
 | 
	
		
			
				|  |  | +                    item.FirstName = client.Name;
 | 
	
		
			
				|  |  | +                    item.LastName = client.LastName;
 | 
	
		
			
				|  |  | +                    item.WorkStatus = 0;
 | 
	
		
			
				|  |  | +                    listVisaCustomer.Add(item);
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            return 0;
 | 
	
		
			
				|  |  | +            _sqlSugar.Insertable(listVisaCustomer).UseParameter().ExecuteCommand();
 | 
	
		
			
				|  |  | +            //return listVisaCustomer;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      }
 |