Former-commit-id: 1a6d1f99ece8066b0ea87e2804d229198c7cff74
Former-commit-id: 661d12ad736f9876afc4d0030687eda290022817
1.0
wanggang 5 years ago
parent 9b4eaa5662
commit 29927d9d47

@ -20,21 +20,28 @@ using TeacherExt.Models;
namespace TeacherExt.Controllers namespace TeacherExt.Controllers
{ {
[Authorize] [Authorize]
public class HomeController :Controller public class HomeController : Controller
{ {
private readonly IHostEnvironment _env; private readonly IHostEnvironment _env;
private readonly ILogger<HomeController> _logger; private readonly ILogger<HomeController> _logger;
private readonly IRepository<Organ> _organRepo; private readonly IRepository<Organ> _organRepo;
private readonly IRepository<User> _userRepo; private readonly IRepository<User> _userRepo;
private readonly IRepository<Teacher> _teacherRepo; 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; this._env = env;
_logger = logger; _logger = logger;
this._organRepo = organRepo; this._organRepo = organRepo;
this._userRepo = userRepo; this._userRepo = userRepo;
this._teacherRepo = teacherRepo; this._teacherRepo = teacherRepo;
this._checkLogRepo = checkLogRepo;
} }
public IActionResult Index(QueryTeacherModel model) public IActionResult Index(QueryTeacherModel model)
@ -45,9 +52,10 @@ namespace TeacherExt.Controllers
.Skip(model.PageSize * (model.PageIndex - 1)) .Skip(model.PageSize * (model.PageIndex - 1))
.Take(model.PageSize) .Take(model.PageSize)
.ToList() .ToList()
.Select(o => { .Select(o =>
var m = o.Teacher != null?o.Teacher.To<EditTeacherModel>() : new EditTeacherModel(); {
if(o.Teacher!=null) var m = o.Teacher != null ? o.Teacher.To<EditTeacherModel>() : new EditTeacherModel();
if (o.Teacher != null)
{ {
this.EntityToModel(o.Teacher, m); 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); var entity = this._userRepo.Table().Include(o => o.Organ).Include(o => o.Teacher).FirstOrDefault(o => o.Id == model.UserId);
if (ModelState.IsValid) 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); entity.Teacher.From(model);
this._userRepo.SaveChanges(); this._userRepo.SaveChanges();
return RedirectToAction("Index"); return RedirectToAction("Index");
@ -102,18 +120,18 @@ namespace TeacherExt.Controllers
public IActionResult Add() public IActionResult Add()
{ {
var model = new EditTeacherModel(); var model = new EditTeacherModel();
this.ToEditModel(null,model); this.ToEditModel(null, model);
return View(model); return View(model);
} }
public IActionResult Edit(Guid userId) public IActionResult Edit(Guid userId)
{ {
var entity = this._userRepo.ReadOnlyTable() var entity = this._userRepo.ReadOnlyTable()
.Include(o=>o.Organ) .Include(o => o.Organ)
.Include(o=>o.Teacher) .Include(o => o.Teacher)
.FirstOrDefault(o => o.Id == userId); .FirstOrDefault(o => o.Id == userId);
var model = entity.To<EditTeacherModel>(); var model = entity.To<EditTeacherModel>();
if(entity.Teacher!=null) if (entity.Teacher != null)
{ {
model.From(entity.Teacher); model.From(entity.Teacher);
} }
@ -129,7 +147,7 @@ namespace TeacherExt.Controllers
[HttpPost] [HttpPost]
public IActionResult Add(EditTeacherModel model) public IActionResult Add(EditTeacherModel model)
{ {
if(ModelState.IsValid) if (ModelState.IsValid)
{ {
var entity = new Teacher(); var entity = new Teacher();
entity.From(model); entity.From(model);
@ -161,6 +179,26 @@ namespace TeacherExt.Controllers
return View(model); 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) private void ValidEditModel(EditTeacherModel model)
{ {
if (!ModelState.IsValid) if (!ModelState.IsValid)
@ -265,7 +303,7 @@ namespace TeacherExt.Controllers
using var fs = System.IO.File.OpenRead(template); using var fs = System.IO.File.OpenRead(template);
var wk = new XSSFWorkbook(fs); var wk = new XSSFWorkbook(fs);
var sheet = wk.GetSheetAt(0); var sheet = wk.GetSheetAt(0);
this.ExportInternal(sheet,model); this.ExportInternal(sheet, model);
using var ms = new MemoryStream(); using var ms = new MemoryStream();
wk.Write(ms); wk.Write(ms);
return File(ms.ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", $"教师列表_{DateTime.Now.ToString("yyyy_MM-dd_HH_mm_ss")}.xlsx"); 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(); 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("局管理员")) if (User.IsInRole("局管理员"))
{ {
//全部数据 //全部数据
@ -304,7 +342,7 @@ namespace TeacherExt.Controllers
return query; return query;
} }
private void ExportInternal(ISheet sheet,QueryTeacherModel model) private void ExportInternal(ISheet sheet, QueryTeacherModel model)
{ {
var style = sheet.Workbook.CreateCellStyle(); var style = sheet.Workbook.CreateCellStyle();
style.BorderTop = BorderStyle.Thin; style.BorderTop = BorderStyle.Thin;
@ -313,8 +351,9 @@ namespace TeacherExt.Controllers
style.BorderLeft = BorderStyle.Thin; style.BorderLeft = BorderStyle.Thin;
var list = this.Query(model) var list = this.Query(model)
.ToList() .ToList()
.Select(o => { .Select(o =>
var m = o.Teacher != null ? o.Teacher.To<EditTeacherModel>() : new EditTeacherModel(); {
var m = o.Teacher != null ? o.Teacher.To<EditTeacherModel>() : new EditTeacherModel { Id=Guid.Empty};
if (o.Teacher != null) if (o.Teacher != null)
{ {
this.EntityToModel(o.Teacher, m); this.EntityToModel(o.Teacher, m);
@ -332,42 +371,54 @@ namespace TeacherExt.Controllers
var teacher = list[i]; var teacher = list[i];
var rowNumber = i + 1; var rowNumber = i + 1;
rowIndex = i + 4; rowIndex = i + 4;
colIndex = -1;
var row = sheet.CreateRow(rowIndex); var row = sheet.CreateRow(rowIndex);
row.Order(00).CreateCell(++colIndex).SetStyle(style).SetType(CellType.Numeric).SetCellValue(rowNumber); 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(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(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(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(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(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.Value); 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(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(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(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(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(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.Value); 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(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(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(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(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(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")); row.Order(18).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.MaxTitleStart.HasValue? teacher.MaxTitleStart.Value.ToString("yyyy-MM"):"");
if (teacher.IsJobAsMaxTitle.Value) 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(20).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
row.Order(21).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(22).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
row.Order(23).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(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(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") : ""); 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(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(45).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.OtherTeachPeriod);
row.Order(46).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.OtherTeachSubject); 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); if (teacher.IsMiddleLevel.Value)
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(47).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.Position);
row.Order(50).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String); row.Order(48).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.PositionStart.HasValue ? teacher.PositionStart.Value.ToString("yyyy-MM") : "");
row.Order(51).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String); 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 else
{ {
row.Order(47).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String); row.Order(47).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
row.Order(48).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(49).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
row.Order(50).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); row.Order(51).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.NotOnPostReasonDate.HasValue ? teacher.NotOnPostReasonDate.Value.ToString("yyyy-MM") : "");
} }
} }
else else
@ -415,8 +477,8 @@ namespace TeacherExt.Controllers
row.Order(47).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String); row.Order(47).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
row.Order(48).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(49).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
row.Order(50).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.NotOnPostReason); row.Order(50).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String);
row.Order(51).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.NotOnPostReasonDate.HasValue ? teacher.NotOnPostReasonDate.Value.ToString("yyyy-MM") : ""); 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(52).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.TeacherCardType);
row.Order(53).CreateCell(++colIndex).SetStyle(style).SetType(CellType.String).SetCellValue(teacher.TeacherCardSubject); 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>(); var colWidthList = new Dictionary<int, int>();
for (int i = 0; i < rowIndex; i++) for (int i = 0; i < rowIndex; i++)
{ {
var row = sheet.GetRow(i); sheet.AutoSizeColumn(i);
for (int j = 0; j < colIndex; j++) //var row = sheet.GetRow(i);
{ //if(row!=null)
var cell = sheet.GetRow(i).GetCell(j); //{
if (!colWidthList.ContainsKey(j)) // for (int j = 0; j < colIndex; j++)
{ // {
colWidthList.Add(j, 0); // var cell = sheet.GetRow(i).GetCell(j);
} // if(cell!=null)
var value = cell.ToString(); // {
var array = value.Split('\n'); // if (!colWidthList.ContainsKey(j))
var length = array.Select(o => Encoding.UTF8.GetBytes(o).Count()).Max() + 2; // {
Console.WriteLine($">>{i}x{j}:{length}:{(cell.IsMergedCell ? "merge" : "")}:{cell}"); // colWidthList.Add(j, 0);
if (length > colWidthList[j]) // }
{ // var value = cell.ToString();
if (!cell.IsMergedCell) // var array = value.Split('\n');
{ // var length = array.Select(o => Encoding.UTF8.GetBytes(o).Count()).Max() + 2;
colWidthList[j] = length; // Console.WriteLine($">>{i}x{j}:{length}:{(cell.IsMergedCell ? "merge" : "")}:{cell}");
Console.WriteLine($">>>>>{j}:{length}:{value}"); // if (length > colWidthList[j])
} // {
} // if (!cell.IsMergedCell)
// {
} // colWidthList[j] = length;
// Console.WriteLine($">>>>>{j}:{length}:{value}");
// }
// }
// }
// }
//}
} }
foreach (var item in colWidthList.Keys) foreach (var item in colWidthList.Keys)
{ {
@ -465,7 +533,7 @@ namespace TeacherExt.Controllers
public void EntityToModel(Teacher entity, EditTeacherModel model) public void EntityToModel(Teacher entity, EditTeacherModel model)
{ {
if(entity!=null) if (entity != null)
{ {
if (!string.IsNullOrEmpty(entity.IdNumber)) if (!string.IsNullOrEmpty(entity.IdNumber))
{ {

@ -11,7 +11,7 @@ namespace TeacherExt.Entities
} }
public string UpdateBy { get; set; } public string UpdateBy { get; set; }
public DateTime? UpdateAt { get; set; } public DateTime? UpdateAt { get; set; }
public string TeacherId { get; set; } public string UserName { get; set; }
public string FromStatus { get; set; } public string FromStatus { get; set; }
public string ToStatus { get; set; } public string ToStatus { get; set; }
} }

@ -0,0 +1,15 @@
using Infrastructure.Application;
using System;
namespace TeacherExt.Models
{
public class QueryHistoryModel : PagedList<QueryHistoryModel>
{
public Guid Id { get; set; }
public string UpdateBy { get; set; }
public DateTime? UpdateAt { get; set; }
public string UserName { get; set; }
public string FromStatus { get; set; }
public string ToStatus { get; set; }
}
}

@ -6,7 +6,7 @@ using TeacherExt.Entities;
namespace TeacherExt.Models namespace TeacherExt.Models
{ {
public class QueryTeacherModel: PagedListModel<EditTeacherModel> public class QueryTeacherModel: PagedList<EditTeacherModel>
{ {
[Display(Name="姓名")] [Display(Name="姓名")]
public string RealName { get; set; } public string RealName { get; set; }

@ -90,7 +90,7 @@
}); });
$('#admin1').click(function () { $('#admin1').click(function () {
$('#CheckStatus').val('校级审核成功'); $('#CheckStatus').val('待局级审核');
$(this).parents('form').submit(); $(this).parents('form').submit();
}); });
$('#admin2').click(function () { $('#admin2').click(function () {

@ -0,0 +1,48 @@
@model QueryHistoryModel
@{
var index = 0;
}
<div class="row">
<div class="col-sm-12">
<form method="post" action="/" target="_self">
<div class="card">
<div class="card-header">
<div class="row">
<div class="col-12">
<button type="button" id="query" class="btn btn-primary" data-method="get" data-target="_self" data-action="@Url.Action("Index")">
查询
</button>
</div>
</div>
</div>
<div class="card-body">
<table class="table table-hover text-nowrap">
<tr>
<th>行号</th>
<th>审核时间</th>
<th>审核人</th>
<th>审核教师</th>
<th>审核前状态</th>
<th>审核后状态</th>
</tr>
@foreach (var item in Model.List)
{
index++;
<tr>
<td>@index</td>
<td>@item.UpdateAt</td>
<td>@item.UpdateBy</td>
<td>@item.UserName</td>
<td>@item.FromStatus</td>
<td>@item.ToStatus</td>
</tr>
}
</table>
</div>
<div class="card-footer">
@(await Html.PartialAsync("_Paged"))
</div>
</div>
</form>
</div>
</div>

@ -74,6 +74,7 @@
<th>籍贯</th> <th>籍贯</th>
<th>审核</th> <th>审核</th>
<th>编辑</th> <th>编辑</th>
<th>审计</th>
</tr> </tr>
@foreach (var item in Model.List) @foreach (var item in Model.List)
{ {
@ -90,7 +91,7 @@
<td>@item.Nation</td> <td>@item.Nation</td>
<td>@item.NativePlace</td> <td>@item.NativePlace</td>
<td> <td>
@if ((User.IsInRole("局管理员") && item.CheckStatus == "待局级审核") || (User.IsInRole("校管理员") && item.CheckStatus == "待校级审核")) @if (User.IsInRole("局管理员") || User.IsInRole("校管理员"))
{ {
<a href="@Url.Action("Details",new { userId=item.UserId})">审核</a> <a href="@Url.Action("Details",new { userId=item.UserId})">审核</a>
} }
@ -101,6 +102,9 @@
<a href="@Url.Action("Edit",new { userId=item.UserId})">我的</a> <a href="@Url.Action("Edit",new { userId=item.UserId})">我的</a>
} }
</td> </td>
<td>
<a href="@Url.Action("History",new { UserName=item.UserName})">日志</a>
</td>
</tr> </tr>
} }
</table> </table>

Loading…
Cancel
Save