diff --git a/New_College.Api/Controllers/Front/PcVolunteerController.cs b/New_College.Api/Controllers/Front/PcVolunteerController.cs index a40014e..12231ba 100644 --- a/New_College.Api/Controllers/Front/PcVolunteerController.cs +++ b/New_College.Api/Controllers/Front/PcVolunteerController.cs @@ -18,6 +18,11 @@ using Microsoft.AspNetCore.Authorization; using StackExchange.Profiling.Internal; using Newtonsoft.Json; using NPOI.SS.Formula.Functions; +using Microsoft.AspNetCore.Server.IIS.Core; +using New_College.Common.WebApiClients.HttpApis; +using NPOI.SS.UserModel; +using System.IO; +using ClosedXML.Excel; namespace New_College.Api.Controllers.Front { @@ -157,7 +162,7 @@ namespace New_College.Api.Controllers.Front AreaName = planstatus ? firstmodels.Province != null ? firstmodels.Province + "|" + (planstatus ? firstmodels.City : "") : "" : "", Nature = planstatus ? firstmodels.Nature != null ? firstmodels.Nature : "" : "", - Rank = planstatus ? ((string.IsNullOrEmpty(firstmodels.UniversityRank) || firstmodels.UniversityRank =="0") ? "--" : firstmodels.UniversityRank) : "--", + Rank = planstatus ? ((string.IsNullOrEmpty(firstmodels.UniversityRank) || firstmodels.UniversityRank == "0") ? "--" : firstmodels.UniversityRank) : "--", planMajorItems = planmajordesc.Where(ww => planids.Contains(ww.ID)).Select(c => new VolunteerTablePlanMajorItem() { @@ -210,6 +215,138 @@ namespace New_College.Api.Controllers.Front } + [HttpPost("Export")] + public async Task Export([FromBody] int id = 0) + { + + if (id <= 0) + { + throw new Exception("id为空"); + } + //var view = new VolunteerTableDetailDtoView(); + //var query = await _VolunteerTableServices.QueryById(id); + //var items = await _VolunteerTableDetailServices.Query(c => c.VolunteerTableId == id); + //var PlanMajorIds = new List(); + //foreach (var item in items) + //{ + // var ids = item.PlanMajorIds.Split(",", StringSplitOptions.RemoveEmptyEntries).Select(c => int.Parse(c)).ToList(); + // PlanMajorIds.AddRange(ids); + //} + //var planmajordesc = await _TbSNeedDataInfoServices.Query(c => SqlFunc.ContainsArray(PlanMajorIds, c.ID));// + //var location = planmajordesc.FirstOrDefault().Location; + //var majorlist = planmajordesc.Select(c => c.MajorName).ToList(); + //var universityname = planmajordesc.Select(c => c.UniversityName).Distinct().ToList(); + //var planmajorcomplist = await _TbSNeedDataInfoServices.Query(c => c.Location == location && SqlFunc.ContainsArray(majorlist, c.MajorName) && SqlFunc.ContainsArray(universityname, c.UniversityName));// + + //view.VolunteerTableName = query.VolunteerTableName; + //view.SubjectClaim = query.SubjectClaim.Length > 2 ? "综合" : query.SubjectClaim; + //view.CustomerId = query.CustomerId; + //view.Score = query.Score; + //view.Type = query.Type; + //view.BatchName = query.BatchName; + //view.CreateTime = query.CreateTime; + //view.ModifyTime = query.ModifyTime; + //var tableDetailItemsViews = new List(); + + //items.ForEach(s => + //{ + // var planids = s.PlanMajorIds.Split(",", StringSplitOptions.RemoveEmptyEntries).Select(ss => long.Parse(ss)).ToList(); + // var typeinfo = new List(); + // if (!string.IsNullOrWhiteSpace(s.VolunteerRemark)) + // { + // typeinfo = s.VolunteerRemark.FromJson>(); + // } + // var planstatus = planmajordesc.Any(e => e.UniversityName == s.UniversityName); + // var firstmodels = planmajordesc.Where(e => e.UniversityName == s.UniversityName).FirstOrDefault(); + // var uitem = new VolunteerTableDetailItemsView() + // { + + // UniversityName = s.UniversityName, + // UniversityCode = s.UniversityCode, + // Sort = s.OrderSort, + // UniversityId = s.UniversityId, + // _211 = planstatus ? firstmodels.LnstitutionalLevel != null ? firstmodels.LnstitutionalLevel.Contains("211") ? "是" : "否" : "否" : "否", + // _985 = planstatus ? firstmodels.LnstitutionalLevel != null ? firstmodels.LnstitutionalLevel.Contains("985") ? "是" : "否" : "否" : "否", + // _SYL = planstatus ? firstmodels.LnstitutionalLevel != null ? firstmodels.LnstitutionalLevel.Contains("双一流") ? "是" : "否" : "否" : "否", + // Ownership = planstatus ? firstmodels.Ownership != null ? firstmodels.Ownership.Contains("省") ? "省属" : firstmodels.Ownership.Contains("市") ? "市属" : firstmodels.Ownership : "" : "", + + // AreaName = planstatus ? firstmodels.Province != null ? firstmodels.Province + "|" + (planstatus ? firstmodels.City : "") : "" : "", + // Nature = planstatus ? firstmodels.Nature != null ? firstmodels.Nature : "" : "", + // Rank = planstatus ? ((string.IsNullOrEmpty(firstmodels.UniversityRank) || firstmodels.UniversityRank == "0") ? "--" : firstmodels.UniversityRank) : "--", + // planMajorItems = planmajordesc.Where(ww => planids.Contains(ww.ID)).Select(c => new VolunteerTablePlanMajorItem() + // { + + // fee = string.IsNullOrEmpty(c.Fee) ? "--" : c.Fee, + // Major = c.MajorName, + // MajorCode = c.MajorCode, + // // MajorGroup = c.MajorGroup, + // MajorRemark = c.Remark, + // planCount = int.Parse(c._23Count), + // PlanId = c.ID, + // AcademicYear = c.AcademicYear, + // Sort = s.OrderSort, + // SubjectClam = c._23subject, + // Percentage = typeinfo.Any() && typeinfo.Count() > 0 ? typeinfo.FirstOrDefault(d => d.planId == c.ID).tage : 0, + // Type = typeinfo.Any() && typeinfo.Count() > 0 ? typeinfo.FirstOrDefault(d => d.planId == c.ID).type : 0, + // PlanItems = new List() + // { + // new PlanItem() { + // PlanCount=c._23Count=="0"?"--":c._23Count, + // RankLine=c._23ScoreLine=="0"?"--":c._23ScoreLine, + // Scoreline=c._23Score == "0" ? "--" : c._23Score, + // Year="2023" + // }, + // new PlanItem() { + // PlanCount=c._22Count=="0"?"--":c._22Count, + // RankLine=c._22ScoreLine=="0"?"--":c._22ScoreLine, + // Scoreline=c._22Score == "0" ? "--" : c._22Score, + // Year="2022" + // }, + // new PlanItem() { + // PlanCount=c._21Count=="0"?"--":c._21Count, + // RankLine=c._21ScoreLine=="0"?"--":c._21ScoreLine, + // Scoreline=c._21Score == "0" ? "--" : c._21Score, + // Year="2021" + // } } + // }).ToList() + // }; + + // tableDetailItemsViews.Add(uitem); + //}); + + // view.tableDetailItemsViews = tableDetailItemsViews; + + using (var workbook = new XLWorkbook()) + { + var worksheet = workbook.Worksheets.Add("Sheet1"); + worksheet.Cell(1, 1).Value = "Column1"; + worksheet.Cell(1, 2).Value = "Column2"; + // 假设 YourDataModel 有两个属性 Property1 和 Property2 + int row = 2; + //foreach (var item in data) + //{ + // worksheet.Cell(row, 1).Value = item.Property1; + // worksheet.Cell(row, 2).Value = item.Property2; + // row++; + //} + for (int k = 0; k < 5; k++) + { + worksheet.Cell(row, 1).Value = k; + worksheet.Cell(row, 2).Value = k; + row++; + } + + using (var stream = new MemoryStream()) + { + workbook.SaveAs(stream); + stream.Position = 0; + + return File(stream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "export.xlsx"); + } + + } + + } /// diff --git a/New_College.Api/New_College.Api.csproj b/New_College.Api/New_College.Api.csproj index be5e17a..a28bb70 100644 --- a/New_College.Api/New_College.Api.csproj +++ b/New_College.Api/New_College.Api.csproj @@ -51,6 +51,8 @@ + + diff --git a/New_College.Api/appsettings.Development.json b/New_College.Api/appsettings.Development.json index 518d39c..9a0a18e 100644 --- a/New_College.Api/appsettings.Development.json +++ b/New_College.Api/appsettings.Development.json @@ -97,14 +97,14 @@ "DBType": 0, "Enabled": true, "HitRate": 20, - "Connection": "Server=192.168.104.108; Port=3306;SslMode=None;Database=volunteerapp; Uid=root; Pwd=Vs..127134;CharSet=utf8mb4;AllowLoadLocalInfile=true;SslMode=none" + "Connection": "Server=192.168.104.103; Port=3306;SslMode=None;Database=volunteerapp; Uid=volunteerapp; Pwd=Vs..127134;CharSet=utf8mb4;AllowLoadLocalInfile=true;SslMode=none" }, { "ConnId": "MYSQL_CasDoor", "DBType": 0, "Enabled": true, "HitRate": 20, - "Connection": "Server=192.168.104.108; Port=3306;SslMode=None;Database=casdoor; Uid=root; Pwd=Vs..127134;CharSet=utf8mb4;AllowLoadLocalInfile=true" + "Connection": "Server=192.168.104.103; Port=3306;SslMode=None;Database=casdoor; Uid=casdoor; Pwd=Vs..127134;CharSet=utf8mb4;AllowLoadLocalInfile=true" }, { "ConnId": "WMBLOG_ORACLE", diff --git a/New_College.Services/D_LongIdMapServices.cs b/New_College.Services/D_LongIdMapServices.cs index ad6cd5b..39dcb99 100644 --- a/New_College.Services/D_LongIdMapServices.cs +++ b/New_College.Services/D_LongIdMapServices.cs @@ -2343,9 +2343,9 @@ namespace New_College.Services public async Task UpdatePlanProInf() { - var tbinfo = await t_TbSNeedDataInfoRepository.Query(e => e.Location == "四川省"); - //var universitylist = await d_UniversityRepository.Query(); - //var majorlist = await d_MajorRepository.Query(); + var tbinfo = await t_TbSNeedDataInfoRepository.Query(e => e.Location == "山东省"); + var universitylist = await d_UniversityRepository.Query(e => e.IsDelete == false); + // var majorlist = await d_MajorRepository.Query(e => e.Type == 2 && e.IsDelete == false); #region************************更新招生计划合计**************************** @@ -2381,58 +2381,56 @@ namespace New_College.Services #region ***********************更新相关参数*************************** - var tbsdinfo = await t_TbSNeedDataInfoRepository.Query(e => e.Location == "山东省"); + //var tbsdinfo = await t_TbSNeedDataInfoRepository.Query(e => e.Location == "山东省"); - tbinfo.ForEach(e => - { + //tbinfo.ForEach(e => + //{ - if (tbsdinfo.Any(a => a.UniversityName == e.UniversityName)) - { + // if (tbsdinfo.Any(a => a.UniversityName == e.UniversityName)) + // { - e.UniversityRank = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().UniversityRank; - e.City = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().City; - e.EmploymentQuality = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().EmploymentQuality; - e.EnrollmentCode = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().EnrollmentCode; - if (tbsdinfo.Any(a => a.UniversityName == e.UniversityName && a.MajorName.Contains(e.MajorName))) - { - e.Fee = tbsdinfo.Where(a => a.UniversityName == e.UniversityName && a.MajorName.Contains(e.MajorName)).FirstOrDefault().Fee; - e.MjaorLevel = tbsdinfo.Where(a => a.UniversityName == e.UniversityName && a.MajorName.Contains(e.MajorName)).FirstOrDefault().MjaorLevel; - e.MajorCount = tbsdinfo.Where(a => a.UniversityName == e.UniversityName && a.MajorName.Contains(e.MajorName)).FirstOrDefault().LnstitutionalLevel; - e.MajorRankPercentage = tbsdinfo.Where(a => a.UniversityName == e.UniversityName && a.MajorName.Contains(e.MajorName)).FirstOrDefault().LnstitutionalLevel; - e.FirstType = tbsdinfo.Where(a => a.UniversityName == e.UniversityName && a.MajorName.Contains(e.MajorName)).FirstOrDefault().FirstType; - } + // e.UniversityRank = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().UniversityRank; + // e.City = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().City; + // e.EmploymentQuality = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().EmploymentQuality; + // e.EnrollmentCode = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().EnrollmentCode; + // if (tbsdinfo.Any(a => a.UniversityName == e.UniversityName && a.MajorName.Contains(e.MajorName))) + // { + // e.Fee = tbsdinfo.Where(a => a.UniversityName == e.UniversityName && a.MajorName.Contains(e.MajorName)).FirstOrDefault().Fee; + // e.MjaorLevel = tbsdinfo.Where(a => a.UniversityName == e.UniversityName && a.MajorName.Contains(e.MajorName)).FirstOrDefault().MjaorLevel; + // e.MajorCount = tbsdinfo.Where(a => a.UniversityName == e.UniversityName && a.MajorName.Contains(e.MajorName)).FirstOrDefault().LnstitutionalLevel; + // e.MajorRankPercentage = tbsdinfo.Where(a => a.UniversityName == e.UniversityName && a.MajorName.Contains(e.MajorName)).FirstOrDefault().LnstitutionalLevel; + // e.FirstType = tbsdinfo.Where(a => a.UniversityName == e.UniversityName && a.MajorName.Contains(e.MajorName)).FirstOrDefault().FirstType; + // } - e.LnstitutionalLevel = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().LnstitutionalLevel; + // e.LnstitutionalLevel = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().LnstitutionalLevel; - e.MastersDegree = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().MastersDegree; - e.MastersMajor = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().MastersMajor; + // e.MastersDegree = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().MastersDegree; + // e.MastersMajor = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().MastersMajor; - e.Nature = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().Nature; - e.Ownership = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().Ownership; - e.PhDMajor = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().PhDMajor; - e.PhDPoint = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().PhDPoint; - e.ProfessionalAssessment = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().ProfessionalAssessment; - e.Province = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().Province; - e.VRUrl = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().VRUrl; - } - }); - await t_TbSNeedDataInfoRepository.BatchUpdate(tbinfo); + // e.Nature = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().Nature; + // e.Ownership = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().Ownership; + // e.PhDMajor = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().PhDMajor; + // e.PhDPoint = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().PhDPoint; + // e.ProfessionalAssessment = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().ProfessionalAssessment; + // e.Province = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().Province; + // e.VRUrl = tbsdinfo.Where(a => a.UniversityName == e.UniversityName).FirstOrDefault().VRUrl; + // } + //}); + //await t_TbSNeedDataInfoRepository.BatchUpdate(tbinfo); #endregion - - - #region 院校专业关联 - //var models = new List(); + //tbinfo.ForEach(async a => //{ - // if (universitylist.Where(e => e.Name == a.UniversityName).Any()) + // if (majorlist.Where(e => a.MajorName.Contains(e.Name)).Any()) // { - // if (majorlist.Where(e => a.MajorName.Contains(e.Name)).Any()) + // if (universitylist.Where(e => e.Name == a.UniversityName).Any()) // { + // var mid = majorlist.Where(e => a.MajorName.Contains(e.Name)).FirstOrDefault().Id; // var uid = universitylist.Where(e => e.Name == a.UniversityName).FirstOrDefault().Id; // if (!models.Where(e => e.Universityid == uid && e.MajorId == mid).Any()) @@ -2455,40 +2453,42 @@ namespace New_College.Services //await d_MajorMapUniversityRepository.Add(models); #endregion - - - - - - - //var universitylist=await un #region 更新专业计划信息 - //var plist = await this.d_PlanMajorDescProRepository.Query(c => c.Location == "山东省" && c.Years == 2023 && c.IsDelete == false && c.UId <= 0); - //plist.ForEach(p => - //{ - // var newmodel = tbinfo.Where(e => (e.EnrollmentCode == p.EnrollmentCode || e.UniversityName == p.UniversityName) && e.MajorCode == p.MajorCode).FirstOrDefault(); - // if (newmodel != null) - // { - // p.CityName = newmodel.City; - // p.EducationCategory = newmodel.EducationCategory; - // // p.EnrollmentCode = newmodel.EnrollmentCode; - // p.EnrollmentType = newmodel.EnrollmentType; - // //p.SchoolType=newmodel.sch - // p.FirstType = newmodel.FirstType; - // p.Nature = newmodel.Nature; - // p.Ownership = newmodel.Ownership; - // p.NewCount = int.Parse(newmodel._23Count) - int.Parse(newmodel._22Count); - // p.PlanCount = int.Parse(newmodel._23Count); - // p.LowScore = int.Parse(newmodel._23Score); - // p.LowScoreRank = int.Parse(newmodel._23ScoreLine); + //var plist = await this.d_PlanMajorDescProRepository.Query(c => c.Location == "上海市" && c.Years == 2023 && c.IsDelete == false && c.UId <= 0); + var plist = await this.d_PlanMajorDescProRepository.Query(c => c.Location == "上海市" && c.Years == 2023 && c.IsDelete == false); + plist.ForEach(p => + { + //var newmodel = tbinfo.Where(e => (e.EnrollmentCode == p.EnrollmentCode || e.UniversityName == p.UniversityName) && e.MajorCode == p.MajorCode).FirstOrDefault(); + //if (newmodel != null) + //{ + var universitymodel = universitylist.Where(e => e.Id == p.UId).FirstOrDefault(); + if (universitymodel != null) + { + // p.CityName = universitymodel.Area_Name; + // p.EducationCategory = universitymodel.; + p.EnrollmentCode = universitymodel.UniversityCode; + // p.EnrollmentType = newmodel.EnrollmentType; + //p.SchoolType=newmodel.sch + //p.FirstType = universitymodel.FirstType; + // p.Nature = universitymodel.Nature; + p.Ownership = universitymodel.AscriptionName; + p.Web = universitymodel.Web; + p.Logo = universitymodel.Logo; + p._985 = universitymodel.Nhef == 1 ? "是" : "否"; + p._211 = universitymodel.Sff == 1 ? "是" : "否"; + p._SYL = universitymodel.Syl == 1 ? "是" : "否"; + p.Rank = (universitymodel.Rank == 0 || universitymodel.Rank == 9999) ? "--" : universitymodel.Rank.ToString(); + //p.NewCount = int.Parse(newmodel._23Count) - int.Parse(newmodel._22Count); + //p.PlanCount = int.Parse(newmodel._23Count); + //p.LowScore = int.Parse(newmodel._23Score); + //p.LowScoreRank = int.Parse(newmodel._23ScoreLine); - // } + } - //}); - - //await this.d_PlanMajorDescProRepository.Batchupdate(plist); + }); + await this.d_PlanMajorDescProRepository.Batchupdate(plist); #endregion #region 更新专业分数先选科数据 @@ -2507,9 +2507,6 @@ namespace New_College.Services #endregion - - - return true; }