435 lines
18 KiB
C#
435 lines
18 KiB
C#
using Competition.Mysql.api;
|
|
using Competition.Mysql.api.Post;
|
|
using Microsoft.AspNetCore.Authorization;
|
|
using Microsoft.AspNetCore.Http;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using Microsoft.CodeAnalysis;
|
|
using NPOI.POIFS.Crypt.Dsig;
|
|
using System.ComponentModel;
|
|
using System.Transactions;
|
|
|
|
namespace CompetitionAPI.Controllers
|
|
{
|
|
/// <summary>
|
|
/// 班级管理
|
|
/// </summary>
|
|
[Route("api/[action]")]
|
|
[ApiController]
|
|
public class ClassController : ControllerBase
|
|
{
|
|
Competition.BLL.user_login bll = new Competition.BLL.user_login();
|
|
Competition.BLL.daily_record bll_log = new Competition.BLL.daily_record();
|
|
// Competition.BLL.school_manager bll_school = new Competition.BLL.school_manager();
|
|
Competition.BLL.class_manager bll_class = new Competition.BLL.class_manager();
|
|
|
|
/// <summary>
|
|
/// 添加班级
|
|
/// </summary>
|
|
/// <param name="cla"></param>
|
|
/// <returns></returns>
|
|
[Authorize]
|
|
[HttpPost]
|
|
public IActionResult AddClassManager(add_class_manager cla)
|
|
{
|
|
var res = new result_data();
|
|
try
|
|
{
|
|
using (var scope = new TransactionScope())
|
|
{
|
|
if (!string.IsNullOrEmpty(cla.LoginId) && !string.IsNullOrEmpty(cla.ClassName) && !string.IsNullOrEmpty(cla.ContactName) && !string.IsNullOrEmpty(cla.ContactNumber))
|
|
{
|
|
var list = bll.GetModelList(" UserId='"+ cla.LoginId + "'").FirstOrDefault();
|
|
if (list.IdentityName == "学校管理员")
|
|
{
|
|
var amodel = new Competition.Model.daily_record();
|
|
amodel.LogId = Guid.NewGuid().ToString();
|
|
amodel.SchoolId = list.SchoolId;
|
|
amodel.UserName = list.UserName;
|
|
amodel.Identity = list.IdentityName;
|
|
amodel.CreateTime = DateTime.Now;
|
|
amodel.LogInfo = list.UserName + "添加班级:" + cla.ClassName + "成功";
|
|
bll_log.Add(amodel);
|
|
var model = new Competition.Model.class_manager();
|
|
model.ClassId = Guid.NewGuid().ToString();
|
|
model.SchoolId = list.SchoolId;
|
|
model.ContactName = cla.ContactName;
|
|
model.ClassName = cla.ClassName;
|
|
model.ContactNumber = cla.ContactNumber;
|
|
model.CreateTime = DateTime.Now;
|
|
bll_class.Add(model);
|
|
//提交事务回滚
|
|
scope.Complete();
|
|
res.code = 200;
|
|
res.msg = "添加成功";
|
|
}
|
|
else
|
|
{
|
|
res.code = 201;
|
|
res.msg = "身份不对";
|
|
}
|
|
|
|
}
|
|
else
|
|
{
|
|
res.code = 201;
|
|
res.msg = "参数不能为空";
|
|
}
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
res.code = 500;
|
|
res.msg = "失败" + ex.Message;
|
|
}
|
|
return Ok(res);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取班级
|
|
/// </summary>
|
|
/// <param name="LoginId"></param>
|
|
/// <param name="ClassName"></param>
|
|
/// <returns></returns>
|
|
[Authorize]
|
|
[HttpGet]
|
|
public IActionResult GetClassManager(string LoginId="",string ClassName = "")
|
|
{
|
|
var res=new get_class_manager();
|
|
try
|
|
{
|
|
var data=new List<class_managerData>();
|
|
if (!string.IsNullOrEmpty(LoginId) && !string.IsNullOrEmpty(ClassName))
|
|
{
|
|
var list = bll.GetModelList(" UserId='"+ LoginId + "'").FirstOrDefault();
|
|
if (list.IdentityName == "学校管理员")
|
|
{
|
|
var model = new Competition.Model.daily_record();
|
|
model.LogId = Guid.NewGuid().ToString();
|
|
model.SchoolId = list.SchoolId;
|
|
model.Identity = list.IdentityName;
|
|
model.UserName = list.UserName;
|
|
model.CreateTime = DateTime.Now;
|
|
model.LogInfo = list.UserName + "查询班级名称为:" + ClassName + "数据";
|
|
bll_log.Add(model);
|
|
var alist = bll_class.GetModelList(" SchoolId='" + list.SchoolId + "' and ClassName like '%" + ClassName + "%'").ToList();
|
|
foreach (var item in alist)
|
|
{
|
|
var amodel = new class_managerData();
|
|
amodel.ClassId = item.ClassId;
|
|
amodel.ClassName = item.ClassName;
|
|
amodel.ContactName = item.ContactName;
|
|
amodel.ContactNumber = item.ContactNumber;
|
|
data.Add(amodel);
|
|
}
|
|
res.code = 200;
|
|
res.msg = "成功";
|
|
res.data = data;
|
|
}
|
|
else
|
|
{
|
|
res.code = 201;
|
|
res.msg = "身份不对";
|
|
}
|
|
}
|
|
else if(!string.IsNullOrEmpty(LoginId))
|
|
{
|
|
var list = bll.GetModelList(" UserId='" + LoginId + "'").FirstOrDefault();
|
|
if (list.IdentityName == "学校管理员")
|
|
{
|
|
var model = new Competition.Model.daily_record();
|
|
model.LogId = Guid.NewGuid().ToString();
|
|
model.SchoolId = list.SchoolId;
|
|
model.Identity = list.IdentityName;
|
|
model.UserName = list.UserName;
|
|
model.CreateTime = DateTime.Now;
|
|
model.LogInfo = list.UserName + "查询所有班级数据";
|
|
bll_log.Add(model);
|
|
var alist = bll_class.GetModelList(" SchoolId='" + list.SchoolId + "'").ToList();
|
|
foreach (var item in alist)
|
|
{
|
|
var amodel = new class_managerData();
|
|
amodel.ClassId = item.ClassId;
|
|
amodel.ClassName = item.ClassName;
|
|
amodel.ContactName = item.ContactName;
|
|
amodel.ContactNumber = item.ContactNumber;
|
|
data.Add(amodel);
|
|
}
|
|
res.code = 200;
|
|
res.msg = "成功";
|
|
res.data = data;
|
|
}
|
|
else
|
|
{
|
|
res.code = 201;
|
|
res.msg = "身份不对";
|
|
}
|
|
}
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
res.code = 500;
|
|
res.msg="失败"+ex.Message;
|
|
}
|
|
return Ok(res);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 添加班级用户
|
|
/// </summary>
|
|
/// <param name="cla"></param>
|
|
/// <returns></returns>
|
|
[Authorize]
|
|
[HttpPost]
|
|
public IActionResult AddClassUser(add_class_user cla)
|
|
{
|
|
var res = new result_data();
|
|
try
|
|
{
|
|
using (var scope = new TransactionScope())
|
|
{
|
|
if (!string.IsNullOrEmpty(cla.LoginId) && !string.IsNullOrEmpty(cla.ClassId) && !string.IsNullOrEmpty(cla.UserId))
|
|
{
|
|
var list = bll.GetModelList(" UserId='" + cla.LoginId + "'").FirstOrDefault();
|
|
if (list.IdentityName == "学校管理员")
|
|
{
|
|
var alist = bll_class.GetModelList(" ClassId='" + cla.ClassId + "'").FirstOrDefault();
|
|
var UserList = cla.UserId.Split(',');
|
|
var count = UserList.Count();
|
|
var clist = bll_class.GetModelList(" ClassId='" + cla.ClassId + "'").FirstOrDefault();
|
|
foreach (var item in UserList)
|
|
{
|
|
var blist = bll.GetModelList(" UserId='" + item + "'").FirstOrDefault();
|
|
blist.ClassId = cla.ClassId;
|
|
bll.Update(blist);
|
|
}
|
|
var model = new Competition.Model.daily_record();
|
|
model.UserName = list.UserName;
|
|
model.SchoolId = list.SchoolId;
|
|
model.Identity = list.IdentityName;
|
|
model.CreateTime = DateTime.Now;
|
|
model.LogId = Guid.NewGuid().ToString();
|
|
model.LogInfo = list.UserName + "为" + clist.ClassName + "添加" + count + "人";
|
|
bll_log.Add(model);
|
|
//事务提交回滚
|
|
scope.Complete();
|
|
res.code = 200;
|
|
res.msg = "添加成功";
|
|
}
|
|
else
|
|
{
|
|
res.code = 201;
|
|
res.msg = "身份不对";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
res.code = 201;
|
|
res.msg = "参数不能为空";
|
|
}
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
res.code = 500;
|
|
res.msg = "失败" + ex.Message;
|
|
}
|
|
return Ok(res);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 删除班级
|
|
/// </summary>
|
|
/// <param name="LoginId"></param>
|
|
/// <param name="ClassId"></param>
|
|
/// <returns></returns>
|
|
[Authorize]
|
|
[HttpGet]
|
|
public IActionResult DelClassManager(string LoginId="",string ClassId = "")
|
|
{
|
|
var res = new result_data();
|
|
try
|
|
{
|
|
using (var scope = new TransactionScope())
|
|
{
|
|
if (!string.IsNullOrEmpty(LoginId) && !string.IsNullOrEmpty(ClassId))
|
|
{
|
|
var list = bll.GetModelList(" UserId='" + LoginId + "'").FirstOrDefault();
|
|
if (list.IdentityName == "学校管理员")
|
|
{
|
|
var alist = bll_class.GetModelList(" ClassId='" + ClassId + "'").FirstOrDefault();
|
|
bll_class.Delete(ClassId);
|
|
var blist = bll.GetModelList(" ClassId='" + ClassId + "'").ToList();
|
|
foreach (var item in blist)
|
|
{
|
|
bll.Delete(item.UserId);
|
|
}
|
|
var model = new Competition.Model.daily_record();
|
|
model.LogId = Guid.NewGuid().ToString();
|
|
model.SchoolId = list.SchoolId;
|
|
model.Identity = list.IdentityName;
|
|
model.UserName = list.UserName;
|
|
model.CreateTime = DateTime.Now;
|
|
model.LogInfo = list.UserName + "删除班级:" + alist.ClassName + "成功及以下所有账号用户";
|
|
bll_log.Add(model);
|
|
//事务提交回滚
|
|
scope.Complete();
|
|
res.code = 200;
|
|
res.msg = "删除成功";
|
|
}
|
|
else
|
|
{
|
|
res.code = 201;
|
|
res.msg = "身份不对";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
res.code = 201;
|
|
res.msg = "参数不能为空";
|
|
}
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
res.code = 500;
|
|
res.msg = "失败" + ex.Message;
|
|
}
|
|
return Ok(res);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 反填班级
|
|
/// </summary>
|
|
/// <param name="LoginId"></param>
|
|
/// <param name="ClassId"></param>
|
|
/// <returns></returns>
|
|
[Authorize]
|
|
[HttpGet]
|
|
public IActionResult FindClassManager(string LoginId = "", string ClassId = "")
|
|
{
|
|
var res = new find_class_manager();
|
|
try
|
|
{
|
|
using (var scope = new TransactionScope())
|
|
{
|
|
var data = new List<find_class_managerData>();
|
|
if (!string.IsNullOrEmpty(LoginId) && !string.IsNullOrEmpty(ClassId))
|
|
{
|
|
var loglist = bll.GetModelList(" UserId='" + LoginId + "'").FirstOrDefault();
|
|
var list = bll_class.GetModelList(" ClassId='" + ClassId + "'").FirstOrDefault();
|
|
if (list != null)
|
|
{
|
|
if (loglist.IdentityName == "学校管理员")
|
|
{
|
|
var model = new find_class_managerData();
|
|
model.ClassId = list.ClassId;
|
|
model.SchoolId = list.SchoolId;
|
|
model.ClassName = list.ClassName;
|
|
model.ContactName = list.ContactName;
|
|
model.ContactNumber = list.ContactNumber;
|
|
data.Add(model);
|
|
|
|
var logmodel = new Competition.Model.daily_record();
|
|
logmodel.LogId = Guid.NewGuid().ToString();
|
|
logmodel.CreateTime = DateTime.Now;
|
|
logmodel.SchoolId = loglist.SchoolId;
|
|
logmodel.Identity = loglist.IdentityName;
|
|
logmodel.UserName = loglist.UserName;
|
|
logmodel.LogInfo = loglist.UserName + "反填班级:" + list.ClassName + "成功";
|
|
bll_log.Add(logmodel);
|
|
//事务提交回滚
|
|
scope.Complete();
|
|
res.code = 200;
|
|
res.msg = "成功";
|
|
res.data = data;
|
|
}
|
|
else
|
|
{
|
|
res.code = 201;
|
|
res.msg = "身份不对";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
res.code = 201;
|
|
res.msg = "无此数据";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
res.code = 201;
|
|
res.msg = "参数不能为空";
|
|
}
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
res.code = 500;
|
|
res.msg = "失败" + ex.Message;
|
|
}
|
|
return Ok(res);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 修改班级
|
|
/// </summary>
|
|
/// <param name="cla"></param>
|
|
/// <returns></returns>
|
|
[Authorize]
|
|
[HttpPost]
|
|
public IActionResult UpdateClassManager(update_class_manager cla)
|
|
{
|
|
var res = new result_data();
|
|
try
|
|
{
|
|
using (var scope = new TransactionScope())
|
|
{
|
|
if (!string.IsNullOrEmpty(cla.LoginId) && !string.IsNullOrEmpty(cla.ClassId) && !string.IsNullOrEmpty(cla.ClassName) && !string.IsNullOrEmpty(cla.ContactName) && !string.IsNullOrEmpty(cla.ContactNumber))
|
|
{
|
|
var loglist = bll.GetModelList(" UserId='" + cla.LoginId + "'").FirstOrDefault();
|
|
if (loglist.IdentityName == "学校管理员")
|
|
{
|
|
var list = bll_class.GetModelList(" ClassId='" + cla.ClassId + "'").FirstOrDefault();
|
|
list.ContactName = cla.ContactName;
|
|
list.ContactNumber = cla.ContactNumber;
|
|
list.SchoolId = list.SchoolId;
|
|
list.ClassName = cla.ClassName;
|
|
list.CreateTime = DateTime.Now;
|
|
bll_class.Update(list);
|
|
var logmodel = new Competition.Model.daily_record();
|
|
logmodel.LogId = Guid.NewGuid().ToString();
|
|
logmodel.SchoolId = loglist.SchoolId;
|
|
logmodel.Identity = loglist.IdentityName;
|
|
logmodel.UserName = loglist.UserName;
|
|
logmodel.CreateTime = DateTime.Now;
|
|
logmodel.LogInfo = logmodel.UserName + "修改班级:" + list.ClassName + "成功";
|
|
bll_log.Add(logmodel);
|
|
//事务提交回滚
|
|
scope.Complete();
|
|
res.code = 200;
|
|
res.msg = "修改成功";
|
|
}
|
|
else
|
|
{
|
|
res.code = 201;
|
|
res.msg = "身份不对";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
res.code = 201;
|
|
res.msg = "参数不能为空";
|
|
}
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
res.code = 500;
|
|
res.msg = "失败" + ex.Message;
|
|
}
|
|
return Ok(res);
|
|
}
|
|
}
|
|
}
|