增加三层下拉框

develop
old易 2024-05-14 11:12:07 +08:00
parent 381a480f76
commit 996994af25
8 changed files with 200 additions and 28 deletions

View File

@ -179,7 +179,7 @@ namespace New_College.Api.Controllers.Front
return new MessageModel<List<UniversityMongoResult>>()
{
response = result,
response = result,
};
}
@ -425,6 +425,27 @@ namespace New_College.Api.Controllers.Front
}
/// <summary>
/// 院校相关专业专用三层下拉接口
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
[HttpGet]
public async Task<MessageModel<List<uniTreeMajorItems>>> GetUniversityMajorByTree([FromQuery] IdQuery query)
{
var result = await iD_LongIdMapServices.GetUniversityMajorByTree(query);
return new MessageModel<List<uniTreeMajorItems>>()
{
success = true,
msg = "获取成功",
response = result
};
}
/// <summary>
/// 院校相关专业专用
/// </summary>

View File

@ -68,9 +68,11 @@ namespace New_College.Controllers
//return d_LongIdMapServices.UpdateUniveristyInf();
await d_LongIdMapServices.UpdateSchoolScoreLine23();
//更新院校分数线
// await d_LongIdMapServices.UpdateSchoolScoreLine23();
// await v_CustomerInfoServices.CustomeBillExport();
await d_LongIdMapServices.PlanNeedProSync("浙江省", 2023, "综合", "普通类一段");
// await v_CustomerInfoServices.CustomeBillExport();
return true;
}

View File

@ -520,6 +520,13 @@
</summary>
<returns></returns>
</member>
<member name="M:New_College.Api.Controllers.Front.LibraryController.GetUniversityMajorByTree(New_College.Model.ViewModels.IdQuery)">
<summary>
院校相关专业专用三层下拉接口
</summary>
<param name="query"></param>
<returns></returns>
</member>
<member name="M:New_College.Api.Controllers.Front.LibraryController.GetUniversityMajor(New_College.Model.ViewModels.IdQuery)">
<summary>
院校相关专业专用

View File

@ -13,6 +13,16 @@ namespace New_College.IServices
/// </summary>
public interface ID_LongIdMapServices : IBaseServices<D_LongIdMap>
{
/// <summary>
/// 同步融合表
/// </summary>
/// <param name="location"></param>
/// <param name="years"></param>
/// <param name="subjectType"></param>
/// <param name="batchname"></param>
/// <returns></returns>
Task<bool> PlanNeedProSync(string location, int years, string subjectType, string batchname);
/// <summary>
/// 更显专业分数线
/// </summary>
@ -66,6 +76,14 @@ namespace New_College.IServices
Task<List<uniMajorInfoResult>> GetUniversityMajor(IdQuery query);
/// <summary>
/// 院校关联专业三级下拉
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
Task<List<uniTreeMajorItems>> GetUniversityMajorByTree(IdQuery query);
/// <summary>
/// 获取职业第三级
/// </summary>

View File

@ -24,6 +24,19 @@ namespace New_College.Model.ViewModels
public string Code { get; set; }
}
public class uniTreeMajorItems
{
public int ParnetId { get; set; }
public int Id { get; set; }
public string Name { get; set; }
public List<uniTreeMajorItems> Item { get; set; }
public int MajorNum { get; set; }
}
/// <summary>
/// uni 专业列表
/// </summary>
@ -96,7 +109,7 @@ namespace New_College.Model.ViewModels
public List<pcOccupationChild> children { get; set; }
}
}

View File

@ -11,6 +11,7 @@ namespace New_College.IRepository
public interface IT_TbSNeedDataInfoRepository : IBaseRepository<T_TbSNeedDataInfo>
{
Task<int> BatchUpdate(List<T_TbSNeedDataInfo> t_TbSNeeds);
Task<int> BatchAdd(List<T_TbSNeedDataInfo> t_TbSNeeds);
}
}

View File

@ -16,6 +16,12 @@ namespace New_College.Repository
{
}
public async Task<int> BatchAdd(List<T_TbSNeedDataInfo> t_TbSNeeds)
{
return await this.Db.Fastest<T_TbSNeedDataInfo>().BulkCopyAsync(t_TbSNeeds);
}
public async Task<int> BatchUpdate(List<T_TbSNeedDataInfo> t_TbSNeeds)
{
return await this.Db.Fastest<T_TbSNeedDataInfo>().BulkUpdateAsync(t_TbSNeeds);

View File

@ -792,6 +792,51 @@ namespace New_College.Services
return list;
}
public async Task<List<uniTreeMajorItems>> GetUniversityMajorByTree(IdQuery query)
{
var rootlist = new List<uniTreeMajorItems>();
var majormapids = (await d_MajorMapUniversityRepository.Query(x => x.IsDelete == false && x.Universityid == query.Id && x.MajorId > 0)).Select(x => x.MajorId).ToList();
var majorclass = (await d_MajorRepository.Query(x => x.IsDelete == false && majormapids.Contains(x.Id)));
var majorclassids = majorclass.Select(x => x.CategoryClass_Id).ToList();
var secondnodes = new List<uniTreeMajorItems>() { };
var majorclassinfo = await d_MajorClassRepository.Query(x => majorclassids.Contains(x.Id));
var majorroot = await d_MajorCategoryRepository.Query(x => majorclassinfo.Select(c => c.TradeId).Contains(x.Id));
foreach (var item in majorclassinfo)
{
var thridnodes = majorclass.Where(x => x.CategoryClass_Id == item.Id).Select(x => new uniTreeMajorItems()
{
Id = x.Id,
Name = x.Name,
ParnetId = item.Id,
}).ToList();
if (thridnodes.Count > 0)
secondnodes.Add(new uniTreeMajorItems()
{
ParnetId = item.TradeId,
Id = item.Id,
Name = item.Name,
Item = thridnodes,
MajorNum = thridnodes.Count()
});
}
majorroot.ForEach(c =>
{
if (secondnodes.Any())
{
rootlist.Add(new uniTreeMajorItems()
{
Id = c.Id,
Item = secondnodes.Where(e => e.ParnetId == c.Id).ToList(),
MajorNum = secondnodes.Where(e => e.ParnetId == c.Id).Count(),
Name = c.Name,
ParnetId = 0
});
}
});
return rootlist;
}
/// <summary>
/// 获取职业第三级
/// </summary>
@ -1936,7 +1981,7 @@ namespace New_College.Services
var dsQualification = new List<D_QualificationLine>();
var list = await d_PlanMajorScoreLineRepository.Query(e => e.IsDelete == false && e.Years == 2023 && e.Location == "浙江省");
var planlist = await d_PlanMajorDescProRepository.Query(e => e.IsDelete == false && e.Years == 2023 && e.Location == "浙江省");
//var universitylist = await d_UniversityRepository.Query();
planlist.ForEach(a =>
@ -1959,29 +2004,27 @@ namespace New_College.Services
// c.UId = universitylist.Where(e => e.Name == c.UniversityName).FirstOrDefault().Id;
// }
//});
//await d_PlanMajorScoreLineRepository.BatchUpdate(list);
//var unlist = list.Select(c => c.UniversityName).Distinct().ToList();
//unlist.ForEach(a =>
//{
// var models = list.Where(e => e.UniversityName == a).FirstOrDefault();
// //先找出院校最低分
// dsQualification.Add(new D_QualificationLine()
// {
// Years = models.Years,
// UniversityName = a,
// CreateTime = DateTime.Now,
// IsDelete = false,
// Location = models.Location,
// OrderSort = 0,
// UId = models.UId,
// LowScore = list.Where(e => e.UniversityName == a).Select(c => c.LowScore).Min(),
// LowScoreRank = list.Where(e => e.UniversityName == a).Select(c => c.LowScoreRank).Min()
// });
//});
//var tt = dsQualification;
//await d_QualificationLineRepository.BatchAdd(dsQualification);
await d_PlanMajorScoreLineRepository.BatchUpdate(list);
var unlist = list.Select(c => c.UniversityName).Distinct().ToList();
unlist.ForEach(a =>
{
var models = list.Where(e => e.UniversityName == a).FirstOrDefault();
//先找出院校最低分
dsQualification.Add(new D_QualificationLine()
{
Years = models.Years,
UniversityName = a,
CreateTime = DateTime.Now,
IsDelete = false,
Location = models.Location,
OrderSort = 0,
UId = models.UId,
LowScore = list.Where(e => e.UniversityName == a).Select(c => c.LowScore).Min(),
LowScoreRank = list.Where(e => e.UniversityName == a).Select(c => c.LowScoreRank).Max()
});
});
var tt = dsQualification;
await d_QualificationLineRepository.BatchAdd(dsQualification);
return true;
}
@ -2217,12 +2260,71 @@ namespace New_College.Services
}
/// <summary>
/// 同步need表数据
/// </summary>
/// <param name="location"></param>
/// <param name="years"></param>
/// <param name="subjectType"></param>
/// <param name="batchname"></param>
/// <returns></returns>
public async Task<bool> PlanNeedProSync(string location, int years, string subjectType, string batchname)
{
var needlist = new List<T_TbSNeedDataInfo>();
var universitylist = await d_UniversityRepository.Query();
var majorlist = await d_PlanMajorScoreLineRepository.Query(e => e.Location == location);
var plist = await this.d_PlanMajorDescProRepository.Query(c => c.Location == location && c.Years == years && c.BatchName == batchname && c.IsDelete == false);
plist.ForEach(a =>
{
var u = universitylist.Where(e => e.Name == a.UniversityName).FirstOrDefault();
needlist.Add(new T_TbSNeedDataInfo()
{
AcademicYear = a.AcademicYear,
// City = universitylist.Where(e => e.Name == a.UniversityName).FirstOrDefault().Area_Name
Province = u.Area_Name,
EducationCategory = u.Subject_Level == 0 ? "本科" : "专科",
EnrollmentCode = u.UniversityCode,
Fee = a.Free,
Location = a.Location,
MajorCode = a.MajorCode,
MajorName = a.Major,
MastersDegree = u.Master_Count.ToString(),
UniversityName = a.UniversityName,
Ownership = u.AscriptionName,
Nature = u.Nature == 0 ? "公办" : u.Nature == 1 ? "民办" : u.Nature == 2 ? "中外合作办学" : "港澳台",
Remark = a.Remark,
PhDPoint = u.Doctorate_Count.ToString(),
SubjectType = subjectType,
_23subject = a.SelectSubject,
_23Count = majorlist.Where(e => e.Years == 2023 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).Any() ? majorlist.Where(e => e.Years == 2023 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).FirstOrDefault().PlanCount.ToString() : "0",
_23Score = majorlist.Where(e => e.Years == 2023 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).Any() ? majorlist.Where(e => e.Years == 2023 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).FirstOrDefault().LowScore.ToString() : "0",
_23ScoreLine = majorlist.Where(e => e.Years == 2023 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).Any() ? majorlist.Where(e => e.Years == 2023 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).FirstOrDefault().LowScoreRank.ToString() : "0",
_22Count = majorlist.Where(e => e.Years == 2023 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).Any() ? majorlist.Where(e => e.Years == 2022 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).FirstOrDefault().PlanCount.ToString() : "0",
_22Score = majorlist.Where(e => e.Years == 2023 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).Any() ? majorlist.Where(e => e.Years == 2022 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).FirstOrDefault().LowScore.ToString() : "0",
_22ScoreLine = majorlist.Where(e => e.Years == 2023 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).Any() ? majorlist.Where(e => e.Years == 2022 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).FirstOrDefault().LowScoreRank.ToString() : "0",
_21Count = majorlist.Where(e => e.Years == 2023 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).Any() ? majorlist.Where(e => e.Years == 2021 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).FirstOrDefault().PlanCount.ToString() : "0",
_21Score = majorlist.Where(e => e.Years == 2023 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).Any() ? majorlist.Where(e => e.Years == 2021 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).FirstOrDefault().LowScore.ToString() : "0",
_21ScoreLine = majorlist.Where(e => e.Years == 2023 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).Any() ? majorlist.Where(e => e.Years == 2021 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).FirstOrDefault().LowScoreRank.ToString() : "0",
_23SchoolScoreLine = majorlist.Where(e => e.Years == 2023 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).Any() ? majorlist.Where(e => e.Years == 2023 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).Select(c => c.LowScoreRank).Max().ToString() : "0",
_23SchoolScore = majorlist.Where(e => e.Years == 2023 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).Any() ? majorlist.Where(e => e.Years == 2023 && e.MajorCode == a.MajorCode && e.UniversityName == a.UniversityName).Select(c => c.LowScore).Min().ToString() : "0"
});
});
var tt = needlist;
// await t_TbSNeedDataInfoRepository.BatchAdd(tt);
return true;
}
/// <summary>
/// 更新招生计划数据
/// </summary>
/// <returns></returns>
public async Task<bool> UpdatePlanProInf()
{
var tbinfo = await t_TbSNeedDataInfoRepository.Query(e => e.Location == "河南省");
var universitylist = await d_UniversityRepository.Query();
var majorlist = await d_MajorRepository.Query();
@ -2410,6 +2512,8 @@ namespace New_College.Services
// #region 院校排序
/// <summary>
/// 院校排序