|
|
|
@ -20,21 +20,28 @@ using TeacherExt.Models;
|
|
|
|
|
namespace TeacherExt.Controllers
|
|
|
|
|
{
|
|
|
|
|
[Authorize]
|
|
|
|
|
public class HomeController :Controller
|
|
|
|
|
public class HomeController : Controller
|
|
|
|
|
{
|
|
|
|
|
private readonly IHostEnvironment _env;
|
|
|
|
|
private readonly ILogger<HomeController> _logger;
|
|
|
|
|
private readonly IRepository<Organ> _organRepo;
|
|
|
|
|
private readonly IRepository<User> _userRepo;
|
|
|
|
|
private readonly IRepository<Teacher> _teacherRepo;
|
|
|
|
|
private readonly IRepository<CheckLog> _checkLogRepo;
|
|
|
|
|
|
|
|
|
|
public HomeController(IHostEnvironment env, ILogger<HomeController> logger, IRepository<Organ> organRepo, IRepository<User> userRepo, IRepository<Teacher> teacherRepo)
|
|
|
|
|
public HomeController(IHostEnvironment env,
|
|
|
|
|
ILogger<HomeController> logger,
|
|
|
|
|
IRepository<Organ> organRepo,
|
|
|
|
|
IRepository<User> userRepo,
|
|
|
|
|
IRepository<Teacher> teacherRepo,
|
|
|
|
|
IRepository<CheckLog> checkLogRepo)
|
|
|
|
|
{
|
|
|
|
|
this._env = env;
|
|
|
|
|
_logger = logger;
|
|
|
|
|
this._organRepo = organRepo;
|
|
|
|
|
this._userRepo = userRepo;
|
|
|
|
|
this._teacherRepo = teacherRepo;
|
|
|
|
|
this._checkLogRepo = checkLogRepo;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public IActionResult Index(QueryTeacherModel model)
|
|
|
|
@ -45,9 +52,10 @@ namespace TeacherExt.Controllers
|
|
|
|
|
.Skip(model.PageSize * (model.PageIndex - 1))
|
|
|
|
|
.Take(model.PageSize)
|
|
|
|
|
.ToList()
|
|
|
|
|
.Select(o => {
|
|
|
|
|
var m = o.Teacher != null?o.Teacher.To<EditTeacherModel>() : new EditTeacherModel();
|
|
|
|
|
if(o.Teacher!=null)
|
|
|
|
|
.Select(o =>
|
|
|
|
|
{
|
|
|
|
|
var m = o.Teacher != null ? o.Teacher.To<EditTeacherModel>() : new EditTeacherModel();
|
|
|
|
|
if (o.Teacher != null)
|
|
|
|
|
{
|
|
|
|
|
this.EntityToModel(o.Teacher, m);
|
|
|
|
|
}
|
|
|
|
@ -90,6 +98,16 @@ namespace TeacherExt.Controllers
|
|
|
|
|
var entity = this._userRepo.Table().Include(o => o.Organ).Include(o => o.Teacher).FirstOrDefault(o => o.Id == model.UserId);
|
|
|
|
|
if (ModelState.IsValid)
|
|
|
|
|
{
|
|
|
|
|
if(entity.Teacher.CheckStatus!=model.CheckStatus)
|
|
|
|
|
{
|
|
|
|
|
this._checkLogRepo.Add( new CheckLog {
|
|
|
|
|
UpdateBy = User.Identity.Name,
|
|
|
|
|
UpdateAt = DateTime.Now,
|
|
|
|
|
UserName = entity.UserName,
|
|
|
|
|
FromStatus = entity.Teacher.CheckStatus,
|
|
|
|
|
ToStatus=model.CheckStatus
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
entity.Teacher.From(model);
|
|
|
|
|
this._userRepo.SaveChanges();
|
|
|
|
|
return RedirectToAction("Index");
|
|
|
|
@ -102,18 +120,18 @@ namespace TeacherExt.Controllers
|
|
|
|
|
public IActionResult Add()
|
|
|
|
|
{
|
|
|
|
|
var model = new EditTeacherModel();
|
|
|
|
|
this.ToEditModel(null,model);
|
|
|
|
|
this.ToEditModel(null, model);
|
|
|
|
|
return View(model);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public IActionResult Edit(Guid userId)
|
|
|
|
|
{
|
|
|
|
|
var entity = this._userRepo.ReadOnlyTable()
|
|
|
|
|
.Include(o=>o.Organ)
|
|
|
|
|
.Include(o=>o.Teacher)
|
|
|
|
|
.Include(o => o.Organ)
|
|
|
|
|
.Include(o => o.Teacher)
|
|
|
|
|
.FirstOrDefault(o => o.Id == userId);
|
|
|
|
|
var model = entity.To<EditTeacherModel>();
|
|
|
|
|
if(entity.Teacher!=null)
|
|
|
|
|
if (entity.Teacher != null)
|
|
|
|
|
{
|
|
|
|
|
model.From(entity.Teacher);
|
|
|
|
|
}
|
|
|
|
@ -129,7 +147,7 @@ namespace TeacherExt.Controllers
|
|
|
|
|
[HttpPost]
|
|
|
|
|
public IActionResult Add(EditTeacherModel model)
|
|
|
|
|
{
|
|
|
|
|
if(ModelState.IsValid)
|
|
|
|
|
if (ModelState.IsValid)
|
|
|
|
|
{
|
|
|
|
|
var entity = new Teacher();
|
|
|
|
|
entity.From(model);
|
|
|
|
@ -161,6 +179,26 @@ namespace TeacherExt.Controllers
|
|
|
|
|
return View(model);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public IActionResult History(QueryHistoryModel model)
|
|
|
|
|
{
|
|
|
|
|
var query = this._checkLogRepo.ReadOnlyTable()
|
|
|
|
|
.Where(o => o.UserName == model.UserName)
|
|
|
|
|
.OrderByDescending(o => o.UpdateAt);
|
|
|
|
|
model.TotalCount = query.Count();
|
|
|
|
|
var list = query.Skip(model.PageSize * (model.PageIndex - 1))
|
|
|
|
|
.OrderByDescending(o=>o.UpdateAt)
|
|
|
|
|
.Take(model.PageSize)
|
|
|
|
|
.ToList()
|
|
|
|
|
.Select(o =>
|
|
|
|
|
{
|
|
|
|
|
var m = o.To<QueryHistoryModel>();
|
|
|
|
|
return m;
|
|
|
|
|
})
|
|
|
|
|
.ToList();
|
|
|
|
|
model.List.AddRange(list);
|
|
|
|
|
return View(model);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void ValidEditModel(EditTeacherModel model)
|
|
|
|
|
{
|
|
|
|
|
if (!ModelState.IsValid)
|
|
|
|
@ -265,7 +303,7 @@ namespace TeacherExt.Controllers
|
|
|
|
|
using var fs = System.IO.File.OpenRead(template);
|
|
|
|
|
var wk = new XSSFWorkbook(fs);
|
|
|
|
|
var sheet = wk.GetSheetAt(0);
|
|
|
|
|
this.ExportInternal(sheet,model);
|
|
|
|
|
this.ExportInternal(sheet, model);
|
|
|
|
|
using var ms = new MemoryStream();
|
|
|
|
|
wk.Write(ms);
|
|
|
|
|
return File(ms.ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", $"教师列表_{DateTime.Now.ToString("yyyy_MM-dd_HH_mm_ss")}.xlsx");
|
|
|
|
@ -284,7 +322,7 @@ namespace TeacherExt.Controllers
|
|
|
|
|
{
|
|
|
|
|
model.Organs = this._organRepo.ReadOnlyTable().ToList().Where(o => o.Id == organId).ToList();
|
|
|
|
|
}
|
|
|
|
|
var query = this._userRepo.ReadOnlyTable().Include(o=>o.Organ).Include(o=>o.Teacher).AsQueryable();
|
|
|
|
|
var query = this._userRepo.ReadOnlyTable().Include(o => o.Organ).Include(o => o.Teacher).AsQueryable();
|
|
|
|
|
if (User.IsInRole("局管理员"))
|
|
|
|
|
{
|
|
|
|
|
//全部数据
|
|
|
|
@ -304,7 +342,7 @@ namespace TeacherExt.Controllers
|
|
|
|
|
return query;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void ExportInternal(ISheet sheet,QueryTeacherModel model)
|
|
|
|
|
private void ExportInternal(ISheet sheet, QueryTeacherModel model)
|
|
|
|
|
{
|
|
|
|
|
var style = sheet.Workbook.CreateCellStyle();
|
|
|
|
|
style.BorderTop = BorderStyle.Thin;
|
|
|
|
@ -313,8 +351,9 @@ namespace TeacherExt.Controllers
|
|
|
|
|
style.BorderLeft = BorderStyle.Thin;
|
|
|
|
|
var list = this.Query(model)
|
|
|
|
|
.ToList()
|
|
|
|
|
.Select(o => {
|
|
|
|
|
var m = o.Teacher != null ? o.Teacher.To<EditTeacherModel>() : new EditTeacherModel();
|
|
|
|
|
.Select(o =>
|
|
|
|
|
{
|
|
|
|
|
var m = o.Teacher != null ? o.Teacher.To<EditTeacherModel>() : new EditTeacherModel { Id=Guid.Empty};
|
|
|
|
|
if (o.Teacher != null)
|
|
|
|
|
{
|
|
|
|
|
this.EntityToModel(o.Teacher, m);
|
|
|
|
@ -332,42 +371,54 @@ namespace TeacherExt.Controllers
|
|
|
|
|
var teacher = list[i];
|
|
|
|
|
var rowNumber = i + 1;
|
|
|
|
|
rowIndex = i + 4;
|
|
|
|
|
colIndex = -1;
|
|
|
|
|
var row = sheet.CreateRow(rowIndex);
|
|
|
|
|
row.Order(00).CreateCell(++colIndex).SetStyle(style).SetType(CellType.Numeric).SetCellValue(rowNumber);
|
|
|
|
|
row.Order(01).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.Organ);
|
|
|
|
|
row.Order(02).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.UserType);
|
|
|
|
|
row.Order(03).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.RealName);
|
|
|
|
|
row.Order(04).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.Sex);
|
|
|
|
|
row.Order(05).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.Birthday.Value.ToString("yyyy-MM"));
|
|
|
|
|
row.Order(06).CreateCell(++colIndex).SetStyle(style).SetType(CellType.Numeric).SetCellValue(teacher.Age.Value);
|
|
|
|
|
row.Order(05).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.Birthday.HasValue? teacher.Birthday.Value.ToString("yyyy-MM"):"");
|
|
|
|
|
row.Order(06).CreateCell(++colIndex).SetStyle(style).SetType(CellType.Numeric).SetCellValue(teacher.Age.HasValue? teacher.Age.Value:0);
|
|
|
|
|
row.Order(07).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.Nation);
|
|
|
|
|
row.Order(08).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.NativePlace);
|
|
|
|
|
row.Order(09).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.PhoneNumber);
|
|
|
|
|
row.Order(10).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.IdNumber);
|
|
|
|
|
row.Order(11).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.JobStart.Value.ToString("yyyy-MM"));
|
|
|
|
|
row.Order(12).CreateCell(++colIndex).SetStyle(style).SetType(CellType.Numeric).SetCellValue(teacher.JobAge.Value);
|
|
|
|
|
row.Order(11).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.JobStart.HasValue? teacher.JobStart.Value.ToString("yyyy-MM"):"");
|
|
|
|
|
row.Order(12).CreateCell(++colIndex).SetStyle(style).SetType(CellType.Numeric).SetCellValue(teacher.JobAge.HasValue?teacher.JobAge.Value:0);
|
|
|
|
|
row.Order(13).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.TeachDate.HasValue ? teacher.TeachDate.Value.ToString("yyyy-MM") : "");
|
|
|
|
|
row.Order(14).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.CurrentJobStart.HasValue ? teacher.CurrentJobStart.Value.ToString("yyyy-MM") : "");
|
|
|
|
|
row.Order(15).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.Politics);
|
|
|
|
|
row.Order(16).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.JoinPartyDate.HasValue ? teacher.JoinPartyDate.Value.ToString("yyyy-MM") : "");
|
|
|
|
|
row.Order(17).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.MaxTitle);
|
|
|
|
|
row.Order(18).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.MaxTitleStart.Value.ToString("yyyy-MM"));
|
|
|
|
|
if (teacher.IsJobAsMaxTitle.Value)
|
|
|
|
|
row.Order(18).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.MaxTitleStart.HasValue? teacher.MaxTitleStart.Value.ToString("yyyy-MM"):"");
|
|
|
|
|
if(teacher.IsJobAsMaxTitle.HasValue)
|
|
|
|
|
{
|
|
|
|
|
if (teacher.IsJobAsMaxTitle.Value)
|
|
|
|
|
{
|
|
|
|
|
row.Order(19).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.JobAsMaxTitleDate.HasValue ? teacher.JobAsMaxTitleDate.Value.ToString("yyyy-MM") : "");
|
|
|
|
|
row.Order(20).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(21).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(22).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(23).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
row.Order(19).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(20).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.JobAsNotMaxTitleReason);
|
|
|
|
|
row.Order(21).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.NotMaxTitle);
|
|
|
|
|
row.Order(22).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.NotMaxTitleStart.HasValue ? teacher.NotMaxTitleStart.Value.ToString("yyyy-MM") : "");
|
|
|
|
|
row.Order(23).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.JobAsNotMaxTitleDate.HasValue ? teacher.JobAsNotMaxTitleDate.Value.ToString("yyyy-MM") : "");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
row.Order(19).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.JobAsMaxTitleDate.Value.ToString("yyyy-MM"));
|
|
|
|
|
row.Order(19).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(20).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(21).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(22).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(23).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
row.Order(19).CreateCell(++colIndex).SetStyle(style);
|
|
|
|
|
row.Order(20).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.JobAsNotMaxTitleReason);
|
|
|
|
|
row.Order(21).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.NotMaxTitle);
|
|
|
|
|
row.Order(22).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.NotMaxTitleStart.Value.ToString("yyyy-MM"));
|
|
|
|
|
row.Order(23).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.JobAsNotMaxTitleDate.Value.ToString("yyyy-MM"));
|
|
|
|
|
}
|
|
|
|
|
row.Order(24).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.PostType);
|
|
|
|
|
row.Order(25).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.PostGrade);
|
|
|
|
|
row.Order(26).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.CurrentPostGradeStart.HasValue ? teacher.CurrentPostGradeStart.Value.ToString("yyyy-MM") : "");
|
|
|
|
@ -391,23 +442,34 @@ namespace TeacherExt.Controllers
|
|
|
|
|
row.Order(44).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.MainTeachGrade);
|
|
|
|
|
row.Order(45).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.OtherTeachPeriod);
|
|
|
|
|
row.Order(46).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.OtherTeachSubject);
|
|
|
|
|
if (teacher.HasPosition.Value)
|
|
|
|
|
if(teacher.HasPosition.HasValue)
|
|
|
|
|
{
|
|
|
|
|
if (teacher.IsMiddleLevel.Value)
|
|
|
|
|
if (teacher.HasPosition.Value)
|
|
|
|
|
{
|
|
|
|
|
row.Order(47).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.Position);
|
|
|
|
|
row.Order(48).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.PositionStart.HasValue ? teacher.PositionStart.Value.ToString("yyyy-MM") : "");
|
|
|
|
|
row.Order(49).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.FrontTeacher);
|
|
|
|
|
row.Order(50).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(51).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
if (teacher.IsMiddleLevel.Value)
|
|
|
|
|
{
|
|
|
|
|
row.Order(47).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.Position);
|
|
|
|
|
row.Order(48).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.PositionStart.HasValue ? teacher.PositionStart.Value.ToString("yyyy-MM") : "");
|
|
|
|
|
row.Order(49).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.FrontTeacher);
|
|
|
|
|
row.Order(50).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(51).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
row.Order(47).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(48).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(49).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(50).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(51).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
row.Order(47).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(48).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(49).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(50).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(51).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(50).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.NotOnPostReason);
|
|
|
|
|
row.Order(51).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.NotOnPostReasonDate.HasValue ? teacher.NotOnPostReasonDate.Value.ToString("yyyy-MM") : "");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
@ -415,8 +477,8 @@ namespace TeacherExt.Controllers
|
|
|
|
|
row.Order(47).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(48).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(49).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(50).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.NotOnPostReason);
|
|
|
|
|
row.Order(51).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.NotOnPostReasonDate.HasValue ? teacher.NotOnPostReasonDate.Value.ToString("yyyy-MM") : "");
|
|
|
|
|
row.Order(50).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
row.Order(51).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
|
|
|
|
|
}
|
|
|
|
|
row.Order(52).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.TeacherCardType);
|
|
|
|
|
row.Order(53).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.TeacherCardSubject);
|
|
|
|
@ -428,28 +490,34 @@ namespace TeacherExt.Controllers
|
|
|
|
|
var colWidthList = new Dictionary<int, int>();
|
|
|
|
|
for (int i = 0; i < rowIndex; i++)
|
|
|
|
|
{
|
|
|
|
|
var row = sheet.GetRow(i);
|
|
|
|
|
for (int j = 0; j < colIndex; j++)
|
|
|
|
|
{
|
|
|
|
|
var cell = sheet.GetRow(i).GetCell(j);
|
|
|
|
|
if (!colWidthList.ContainsKey(j))
|
|
|
|
|
{
|
|
|
|
|
colWidthList.Add(j, 0);
|
|
|
|
|
}
|
|
|
|
|
var value = cell.ToString();
|
|
|
|
|
var array = value.Split('\n');
|
|
|
|
|
var length = array.Select(o => Encoding.UTF8.GetBytes(o).Count()).Max() + 2;
|
|
|
|
|
Console.WriteLine($">>{i}x{j}:{length}:{(cell.IsMergedCell ? "merge" : "")}:{cell}");
|
|
|
|
|
if (length > colWidthList[j])
|
|
|
|
|
{
|
|
|
|
|
if (!cell.IsMergedCell)
|
|
|
|
|
{
|
|
|
|
|
colWidthList[j] = length;
|
|
|
|
|
Console.WriteLine($">>>>>{j}:{length}:{value}");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
sheet.AutoSizeColumn(i);
|
|
|
|
|
//var row = sheet.GetRow(i);
|
|
|
|
|
//if(row!=null)
|
|
|
|
|
//{
|
|
|
|
|
// for (int j = 0; j < colIndex; j++)
|
|
|
|
|
// {
|
|
|
|
|
// var cell = sheet.GetRow(i).GetCell(j);
|
|
|
|
|
// if(cell!=null)
|
|
|
|
|
// {
|
|
|
|
|
// if (!colWidthList.ContainsKey(j))
|
|
|
|
|
// {
|
|
|
|
|
// colWidthList.Add(j, 0);
|
|
|
|
|
// }
|
|
|
|
|
// var value = cell.ToString();
|
|
|
|
|
// var array = value.Split('\n');
|
|
|
|
|
// var length = array.Select(o => Encoding.UTF8.GetBytes(o).Count()).Max() + 2;
|
|
|
|
|
// Console.WriteLine($">>{i}x{j}:{length}:{(cell.IsMergedCell ? "merge" : "")}:{cell}");
|
|
|
|
|
// if (length > colWidthList[j])
|
|
|
|
|
// {
|
|
|
|
|
// if (!cell.IsMergedCell)
|
|
|
|
|
// {
|
|
|
|
|
// colWidthList[j] = length;
|
|
|
|
|
// Console.WriteLine($">>>>>{j}:{length}:{value}");
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
//}
|
|
|
|
|
}
|
|
|
|
|
foreach (var item in colWidthList.Keys)
|
|
|
|
|
{
|
|
|
|
@ -465,7 +533,7 @@ namespace TeacherExt.Controllers
|
|
|
|
|
|
|
|
|
|
public void EntityToModel(Teacher entity, EditTeacherModel model)
|
|
|
|
|
{
|
|
|
|
|
if(entity!=null)
|
|
|
|
|
if (entity != null)
|
|
|
|
|
{
|
|
|
|
|
if (!string.IsNullOrEmpty(entity.IdNumber))
|
|
|
|
|
{
|
|
|
|
|