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 Org.BouncyCastle.Bcpg; using System.Transactions; namespace CompetitionAPI.Controllers { /// /// 班级账号管理 /// [Route("api/[action]")] [ApiController] public class ClassUserController : ControllerBase { Competition.BLL.daily_record bll_log = new Competition.BLL.daily_record(); Competition.BLL.user_login bll = new Competition.BLL.user_login(); Competition.BLL.class_manager bll_class = new Competition.BLL.class_manager(); /// /// 获取所有班级用户 /// /// /// /// /// [Authorize] [HttpGet] public IActionResult GetClassUser(string LoginId="",string ClassName="",string UserName="") { var res = new get_class_user(); try { using (var scope = new TransactionScope()) { var data = new List(); if (!string.IsNullOrEmpty(LoginId) && !string.IsNullOrEmpty(ClassName) || !string.IsNullOrEmpty(UserName)) { var loglist = bll.GetModelList(" UserId='" + LoginId + "'").FirstOrDefault(); if (loglist.IdentityName == "学校管理员") { var logmodel = new Competition.Model.daily_record(); logmodel.LogId = Guid.NewGuid().ToString(); logmodel.UserName = loglist.UserName; logmodel.Identity = loglist.IdentityName; logmodel.SchoolId = loglist.SchoolId; logmodel.CreateTime = DateTime.Now; logmodel.LogInfo = loglist.UserName + "获取班级名称为:" + ClassName + "用户为:" + UserName + "成功"; bll_log.Add(logmodel); var alist = bll_class.GetModelList("SchoolId='" + loglist.SchoolId + "' and ClassName like '%" + ClassName + "%'").ToList(); foreach (var item in alist) { var list = bll.GetModelList(" ClassId ='" + item.ClassId + "' and UserName like '%" + UserName + "%'").ToList(); foreach (var aitem in list) { var model = new class_userData(); model.UserId = aitem.UserId; model.UserName = aitem.UserName; model.ClassName = item.ClassName; model.IdentityName = aitem.IdentityName; model.CreateTime = Convert.ToDateTime(aitem.CreateTime); data.Add(model); } } //事务提交回滚 scope.Complete(); res.code = 200; res.msg = "成功"; res.data = data; } else { res.code = 201; res.msg = "身份不对"; } } else if (!string.IsNullOrEmpty(LoginId)) { var loglist = bll.GetModelList(" UserId='" + LoginId + "'").FirstOrDefault(); if (loglist.IdentityName == "学校管理员") { var logmodel = new Competition.Model.daily_record(); logmodel.LogId = Guid.NewGuid().ToString(); logmodel.UserName = loglist.UserName; logmodel.Identity = loglist.IdentityName; logmodel.SchoolId = loglist.SchoolId; logmodel.CreateTime = DateTime.Now; logmodel.LogInfo = loglist.UserName + "获取所有班级用户成功"; bll_log.Add(logmodel); var list = bll.GetModelList(" SchoolId='" + loglist.SchoolId + "'").ToList(); foreach (var aitem in list) { var model = new class_userData(); model.UserId = aitem.UserId; model.UserName = aitem.UserName; var alist = bll_class.GetModelList(" ClassId='" + aitem.ClassId + "'").FirstOrDefault(); if (alist != null) { model.ClassName = alist.ClassName; } else { model.ClassName = ""; } model.IdentityName = aitem.IdentityName; model.CreateTime = Convert.ToDateTime(aitem.CreateTime); data.Add(model); } //事务提交回滚 scope.Complete(); 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); } /// /// 删除班级用户 /// /// /// /// [Authorize] [HttpGet] public IActionResult DelClassUser(string LoginId="",string UserId = "") { var res = new result_data(); try { using (var scope = new TransactionScope()) { if (!string.IsNullOrEmpty(LoginId) && !string.IsNullOrEmpty(UserId)) { var list = bll.GetModelList(" UserId='" + LoginId + "'").FirstOrDefault(); if (list.IdentityName == "学校管理员") { var alist = bll.GetModelList(" UserId='" + UserId + "'").FirstOrDefault(); bll.Delete(UserId); var model = new Competition.Model.daily_record(); model.LogId = Guid.NewGuid().ToString(); model.Identity = list.IdentityName; model.UserName = list.UserName; model.SchoolId = list.SchoolId; model.LogInfo = list.UserName + "删除班级用户:" + alist.UserName + "成功"; 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); } /// /// 反填班级用户 /// /// /// /// [Authorize] [HttpGet] public IActionResult FindClassUser(string LoginId = "", string UserId = "") { var res = new find_class_user(); try { using (var scope = new TransactionScope()) { if (!string.IsNullOrEmpty(LoginId) && !string.IsNullOrEmpty(UserId)) { var data = new List(); var loglist = bll.GetModelList(" UserId='" + LoginId + "'").FirstOrDefault(); if (loglist.IdentityName == "学校管理员") { var list = bll.GetModelList(" UserId='" + UserId + "'").FirstOrDefault(); var model = new find_class_userData(); model.UserId = list.UserId; model.UserName = list.UserName; model.IdentityName = list.IdentityName; var alist = bll_class.GetModelList(" ClassId='" + list.ClassId + "'").FirstOrDefault(); model.ClassId = list.ClassId; data.Add(model); var logmodel = new Competition.Model.daily_record(); logmodel.LogId = Guid.NewGuid().ToString(); logmodel.Identity = loglist.IdentityName; logmodel.SchoolId = loglist.SchoolId; logmodel.UserName = loglist.UserName; logmodel.CreateTime = DateTime.Now; logmodel.LogInfo = loglist.UserName + "反填班级名称的" + alist.ClassName + "用户名称的" + list.UserName + "数据成功"; 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 = "参数不能为空"; } } } catch (Exception ex) { res.code = 500; res.msg="失败"+ex.Message; } return Ok(res); } /// /// 修改班级用户 /// /// /// [Authorize] [HttpPost] public IActionResult UpdateClassUser(update_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.UserName) && !string.IsNullOrEmpty(cla.UserId)) { var loglist = bll.GetModelList(" UserId='" + cla.LoginId + "'").FirstOrDefault(); if (loglist.IdentityName == "学校管理员") { var list = bll.GetModelList(" UserId='" + cla.UserId + "'").FirstOrDefault(); var alist = bll_class.GetModelList(" ClassId='" + list.ClassId + "'").FirstOrDefault(); list.ClassId = cla.ClassId; list.UserName = cla.UserName; list.IdentityName = cla.IdentityName; list.PassWord = cla.PassWord; bll.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 = loglist.UserName + "修改班级名称:" + alist.ClassName + "用户" + list.UserName + "成功"; 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); } } }