using New_College.IServices; using New_College.Model.Models; using New_College.Services.BASE; using New_College.IRepository.Base; using System.Threading.Tasks; using New_College.IRepository; using New_College.Common.Excel; using System.Collections.Generic; using System.Data; using System.Linq; using System.Data.Entity.ModelConfiguration.Conventions; using System; using New_College.Model.ViewModels.Result; using New_College.Model.ViewModels.Query; using New_College.Model; namespace New_College.Services { public class T_EnrollmentPlaneServices : BaseServices, IT_EnrollmentPlaneServices { private readonly IBaseRepository _dal; private readonly IT_EnrollmentPlaneRepository planeRepository; private readonly ID_UniversityRepository d_University; private readonly ID_MajorRepository d_Major; private readonly IT_EnrollmentBatchRepository t_EnrollmentBatch; private readonly IT_EnrollmentPlanedescRepository t_EnrollmentPlanedesc; public T_EnrollmentPlaneServices(IBaseRepository dal, IT_EnrollmentPlaneRepository t_EnrollmentPlaneRepository, ID_UniversityRepository d_UniversityRepository, ID_MajorRepository d_MajorRepository, IT_EnrollmentBatchRepository t_EnrollmentBatchRepository, IT_EnrollmentPlanedescRepository t_EnrollmentPlanedescRepository) { this._dal = dal; base.BaseDal = dal; this.planeRepository = t_EnrollmentPlaneRepository; this.d_University = d_UniversityRepository; this.d_Major = d_MajorRepository; this.t_EnrollmentBatch = t_EnrollmentBatchRepository; this.t_EnrollmentPlanedesc = t_EnrollmentPlanedescRepository; } /// /// 招生计划 /// /// /// public async Task> GetEnrollmentPlans(EnrollmentPlanRequest request) { return await this.planeRepository.GetEnrollmentPlans(request); } //2020 最低录取分数导入 public async Task Import() { var dataSet = ExcelUtil.ReadExcelToDataSet("D:\\一草一木\\山东2020年招生录取数据.xlsx"); if (dataSet.Tables.Count > 0) { var universitylist = await this.d_University.Query(x => x.IsDelete == false); var majorlist = await this.d_Major.Query(x => x.IsDelete == false); var batchlist = await this.t_EnrollmentBatch.Query(x => x.IsDelete == false && x.AreaId == 1376 && x.Year == 2021); var planinfo = await this.t_EnrollmentPlanedesc.Query(e => e.PlanId == 10); List list = new List() { }; List adduniversity = new List() { }; foreach (DataRow dr in dataSet.Tables[0].Rows) { string schoolname = dr["院校名称"].ToString(); string area = dr["省份"].ToString(); string major = dr["专业"].ToString(); string batch = dr["批次"].ToString(); string lowerscore = dr["最低分"].ToString(); string lowerlevel = dr["最低位次"].ToString(); var universityid = universitylist.Where(x => x.Name == schoolname).Select(x => x.Id).FirstOrDefault(); if (universityid <= 0) { //记录学校 并添加 adduniversity.Add(schoolname); continue; } var batchid = batchlist.Where(x => x.Batch_name == batch).Select(x => x.Id).FirstOrDefault(); var remake = ""; if (major.Contains("(")) { int indexs = major.IndexOf("("); remake = major.Substring(indexs); major = major.Substring(0, indexs); } var majorid = majorlist.Where(x => x.Name == major.Trim()).Select(x => x.Id).FirstOrDefault(); var planinfomodel = planinfo.Where(e => e.UniversityId == universityid && e.MajorId == majorid && e.BatchtypeId == batchid); if (planinfomodel.Any()) { var models = planinfomodel.FirstOrDefault(); models.scorepostion = Convert.ToInt32(lowerlevel); models.Scoreline = Convert.ToInt32(lowerscore); bool kk = await this.t_EnrollmentPlanedesc.Update(models); } } // var cc = adduniversity; // var count = await this.t_EnrollmentPlanedesc.Add(list); } return true; } #region 2021招生分数更新 ///// ///// 2021上海招生分数更新 ///// ///// //public async Task Import() //{ // var dataSet = ExcelUtil.ReadExcelToDataSet("D:\\一草一木\\2021年山东本科招生计划.xls"); // if (dataSet.Tables.Count > 0) // { // var universitylist = await this.d_University.Query(x => x.IsDelete == false); // var majorlist = await this.d_Major.Query(x => x.IsDelete == false); // var batchlist = await this.t_EnrollmentBatch.Query(x => x.IsDelete == false && x.AreaId == 1376 && x.Year == 2021); // List list = new List() { }; // List adduniversity = new List() { }; // foreach (DataRow dr in dataSet.Tables[0].Rows) // { // string schoolname = dr["院校名称"].ToString(); // string area = dr["省份"].ToString(); // string major = dr["专业"].ToString(); // string batch = dr["批次"].ToString(); // //string avgscore = dr["平均分"].ToString(); // //string scoreline = dr["最低分"].ToString(); // string subjectclaim = dr["科类"].ToString(); // string plannum = dr["计划人数"].ToString(); // var universityid = universitylist.Where(x => x.Name == schoolname).Select(x => x.Id).FirstOrDefault(); // if (universityid <= 0) // { // //记录学校 并添加 // adduniversity.Add(schoolname); // continue; // } // var batchid = batchlist.Where(x => x.Batch_name == batch).Select(x => x.Id).FirstOrDefault(); // var remake = ""; // if (major.Contains("(")) // { // int indexs = major.IndexOf("("); // remake = major.Substring(indexs); // major = major.Substring(0, indexs).Trim(); // } // var majorid = majorlist.Where(x => major.Contains(x.Name)).Select(x => x.Id).FirstOrDefault(); // list.Add(new T_EnrollmentPlanedesc() // { // UniversityId = universityid, // BatchtypeId = batchid, // Plancount = Convert.ToInt32(plannum), // PlanId = 10, // //Scoreline = float.Parse(scoreline), // //majoraverage = float.Parse(avgscore), // MajorName = major, // Remark = remake, // MajorId = majorid, // Subjectclaim = subjectclaim, // }); // } // var cc = adduniversity; // var count = await t_EnrollmentPlanedesc.Add(list); // } // return true; //} #endregion /// /// 2019上海招生分数更新 /// /// //public async Task Import() //{ // try // { // var dataSet = ExcelUtil.ReadExcelToDataSet("D:\\Ashuju\\数据\\好帮手\\招生计划\\导入步骤\\江苏省2019缺失分数线补充.xlsx"); // if (dataSet.Tables.Count > 0) // { // var info = await t_EnrollmentPlanedescServices.Query(x => x.PlanId == 9 && x.IsDelete == false && x.Scoreline <= 0); // var universitylist = await d_UniversityRepository.Query(x => x.IsDelete == false); // List list = new List() { }; // List adduniversity = new List() { }; // foreach (DataRow dr in dataSet.Tables[0].Rows) // { // string Name = dr["Name"].ToString(); // string MajorName = dr["MajorName"].ToString(); // string Scoreline = dr["Scoreline"].ToString(); // if (Scoreline != "0") // { // var universityid = universitylist.Where(x => x.Name == Name).Select(x => x.Id).FirstOrDefault(); // if (universityid > 0) // { // var nowinfo = info.Where(x => x.UniversityId == universityid && x.MajorName == MajorName).FirstOrDefault(); // if (nowinfo != null) // { // nowinfo.Scoreline = Convert.ToSingle(Scoreline); // list.Add(nowinfo); // } // } // } // } // var count = await t_EnrollmentPlanedescServices.Update(list); // var cc = 0; // } // return true; //} //catch (Exception ex) //{ // throw; //} //} } }