|
- using System;
- using Learun.Util;
- using System.Data;
- using Learun.Application.TwoDevelopment.EducationalAdministration;
- using System.Web.Mvc;
- using System.Collections.Generic;
- using System.IO;
- using System.Linq;
- using Learun.Application.Base.SystemModule;
- using static Learun.Application.TwoDevelopment.EducationalAdministration.StuInfoBasicEntity;
-
- namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers
- {
- /// <summary>
- /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
- /// Copyright (c) 2013-2018 北京泉江科技有限公司
- /// 创 建:超级管理员
- /// 日 期:2019-02-21 16:53
- /// 描 述:学生学籍
- /// </summary>
- public class StuInfoBasicController : MvcControllerBase
- {
- private StuInfoBasicIBLL stuInfoBasicIBLL = new StuInfoBasicBLL();
- private ArrangeLessonSyncIBLL arrangeLessonSyncIBLL = new ArrangeLessonSyncBLL();
- private AnnexesFileIBLL annexesFileIbll = new AnnexesFileBLL();
- private StuEncourgementIBLL stuEncourgementIBLL = new StuEncourgementBLL();
- private StuPunishmentIBLL stuPunishmentIBLL = new StuPunishmentBLL();
- private StuScoreIBLL stuScoreIBLL = new StuScoreBLL();
-
- #region 视图功能
-
- /// <summary>
- /// 主页面
- /// <summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult Index()
- {
- return View();
- }
- /// <summary>
- /// 主页面【大厂】
- /// <summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult IndexOfDC()
- {
- return View();
- }
- /// <summary>
- /// 表单页
- /// <summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult Form()
- {
- return View();
- }
- /// <summary>
- /// 表单页【大厂】
- /// <summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult FormOfDC()
- {
- return View();
- }
- [HttpGet]
- public ActionResult FormView()
- {
- return View();
- }
-
- [HttpGet]
- public ActionResult MyClass()
- {
- return View();
- }
- [HttpGet]
- public ActionResult CreateGraduateNo()
- {
- return View();
- }
- /// <summary>
- /// 毕业归档
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult Graduate()
- {
- return View();
- }
- [HttpGet]
- public ActionResult CreateGraduateNoForm()
- {
- return View();
- }
- /// <summary>
- /// 异动转入
- /// </summary>
- /// <returns></returns>
- public ActionResult FormTran()
- {
- return View();
- }
-
- /// <summary>
- /// 学生列表【班级信息管理】
- /// <summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult IndexInClass()
- {
- return View();
- }
- /// <summary>
- /// 打印
- /// <summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult Print(string keyValue)
- {
- var stuInfoBasicEntity = stuInfoBasicIBLL.GetStuInfoBasicEntity(keyValue);
- if (stuInfoBasicEntity == null)
- {
- return View(new StuInfoBasicEntity());
- }
- //头像
- stuInfoBasicEntity.Photo = annexesFileIbll.GetEntityByFolderId(stuInfoBasicEntity.Photo)?.F_FilePath;
- if (!string.IsNullOrEmpty(stuInfoBasicEntity.Photo))
- {
- stuInfoBasicEntity.Photo = stuInfoBasicEntity.Photo.Substring(stuInfoBasicEntity.Photo.IndexOf("Resource") - 1);
- }
- //奖罚情况
- stuInfoBasicEntity.StuEncourgementList = stuEncourgementIBLL.GetEncourgementListByStuNo(stuInfoBasicEntity.StuNo).OrderBy(x => x.AcademicYearNo).ThenBy(x => x.Semester).ToList();
- stuInfoBasicEntity.StuPunishmentList = stuPunishmentIBLL.GetPunishmentListByStuNo(stuInfoBasicEntity.StuNo).OrderBy(x => x.AcademicYearNo).ThenBy(x => x.Semester).ToList();
- //学习成绩
- stuInfoBasicEntity.StuScoreClassOneList = stuScoreIBLL.GetAllScoreListByStuNo(stuInfoBasicEntity.StuNo)
- .Where(x => x.AcademicYearNo != null && x.Semester != null && x.Score != null)
- .GroupBy(x => new { x.AcademicYearNo, x.Semester })
- .Select(x => new StuScoreClassOne()
- {
- AcademicYearNo = x.Key.AcademicYearNo,
- Semester = x.Key.Semester,
- StuScoreList = x.Select(y => new StuScoreEntity()
- {
- LessonNo = y.LessonNo,
- LessonName = y.LessonName,
- Score = y.Score
- }).OrderBy(xx => xx.LessonNo).ToList()
- }).OrderBy(xx => xx.AcademicYearNo).ThenBy(xx => xx.Semester).ToList();
-
- return View(stuInfoBasicEntity);
- }
-
-
- /// <summary>
- /// 打印
- /// <summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult Printxjk(string keyValue)
- {
- var stuInfoBasicEntity = stuInfoBasicIBLL.GetStuInfoBasicEntity(keyValue);
- ViewBag.PrintDate = DateTime.Now.ToDate();
- if (stuInfoBasicEntity == null)
- {
- return View(new StuInfoBasicEntity());
- }
- //头像
- stuInfoBasicEntity.Photo = annexesFileIbll.GetEntityByFolderId(stuInfoBasicEntity.Photo)?.F_FilePath;
- if (!string.IsNullOrEmpty(stuInfoBasicEntity.Photo))
- {
- stuInfoBasicEntity.Photo = stuInfoBasicEntity.Photo.Substring(stuInfoBasicEntity.Photo.IndexOf("Resource") - 1);
- }
- //学习成绩
- stuInfoBasicEntity.StuScoreClassOneList = stuScoreIBLL.GetAllScoreListByStuNo(stuInfoBasicEntity.StuNo)
- .Where(x => x.AcademicYearNo != null && x.Semester != null && x.Score != null)
- .GroupBy(x => new { x.AcademicYearNo, x.Semester })
- .Select(x => new StuScoreClassOne()
- {
- AcademicYearNo = x.Key.AcademicYearNo,
- Semester = x.Key.Semester,
- StuScoreList = x.Select(y => new StuScoreEntity()
- {
- LessonNo = y.LessonNo,
- LessonName = y.LessonName,
- Score = y.Score
- }).OrderBy(xx => xx.LessonNo).ToList()
- }).OrderBy(xx => xx.AcademicYearNo).ThenBy(xx => xx.Semester).ToList();
-
- return View(stuInfoBasicEntity);
- }
-
- /// <summary>
- /// 离校手续-图书资料归还
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult GraduateReturnBooks()
- {
- return View();
- }
- /// <summary>
- /// 离校手续-就业协议备案
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult GraduateEmployAgree()
- {
- return View();
- }
- /// <summary>
- /// 离校手续-学杂费结算
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult GraduateFeeSettle()
- {
- return View();
- }
- /// <summary>
- /// 离校手续-办理退住手续
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult GraduateCheckOut()
- {
- return View();
- }
- /// <summary>
- /// 离校手续-校园卡注销
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult GraduateCardDeregistrate()
- {
- return View();
- }
- /// <summary>
- /// 离校手续-毕业证领取
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult GraduateDiplomaReceive()
- {
- return View();
- }
- /// <summary>
- /// 离校手续-档案与组织关系转出
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult GraduateFileTransfer()
- {
- return View();
- }
-
- /// <summary>
- /// 毕业证领取表单
- /// </summary>
- /// <returns></returns>
- public ActionResult GraduateDiplomaReceiveForm()
- {
- return View();
- }
-
- #endregion
-
-
- #region 获取数据
- /// <summary>
- /// 生成帐号
- /// </summary>
- /// <returns></returns>
- [HttpPost]
- [AjaxOnly]
- public ActionResult Generate()
- {
- stuInfoBasicIBLL.GenerateAccout();
- return Success("生成成功!");
- }
-
-
- [HttpPost]
- [AjaxOnly]
- public ActionResult UpdateAccount()
- {
- stuInfoBasicIBLL.UpdateAccount();
- return Success("更新成功!");
- }
-
- /// <summary>
- /// 获取页面显示列表数据
- /// <summary>
- /// <param name="queryJson">查询参数</param>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetPageList(string pagination, string queryJson)
- {
- Pagination paginationobj = pagination.ToObject<Pagination>();
- var data = stuInfoBasicIBLL.GetPageList(paginationobj, queryJson);
- var jsonData = new
- {
- rows = data,
- total = paginationobj.total,
- page = paginationobj.page,
- records = paginationobj.records
- };
- return Success(jsonData);
- }
- /// <summary>
- /// 获取表单数据
- /// <summary>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetFormData(string keyValue)
- {
- var StuInfoBasicData = stuInfoBasicIBLL.GetStuInfoBasicEntity(keyValue);
- var jsonData = new
- {
- StuInfoBasic = StuInfoBasicData,
- };
- return Success(jsonData);
- }
- /// <summary>
- /// 获取毕业学生的专业
- /// </summary>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetMajorInfoWithGraduation()
- {
- var data = stuInfoBasicIBLL.GetMajorInfoWithGraduation();
- return Success(data);
- }
-
-
- /// <summary>
- /// 获取页面显示列表数据
- /// <summary>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetAllList()
- {
- var data = stuInfoBasicIBLL.GetAllList();
- return Success(data);
- }
-
-
- /// <summary>
- /// 根据帐号获取学生的信息
- /// </summary>
- /// <param name="Account"></param>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetStuInfo(string Account)
- {
- var stuInfo = stuInfoBasicIBLL.GetStuInfoBasicEntityByStuNo(Account);
- if (stuInfo != null)
- {
-
- return JsonResult(stuInfo);
- }
- else
- {
- return Fail("学生不存在");
- }
- }
- /// <summary>
- /// 根据帐号获取学生的信息
- /// </summary>
- /// <param name="ClassNo">班级码</param>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetStuInfoByClassNo(string ClassNo)
- {
- var stuInfo = stuInfoBasicIBLL.GetStuInfoByClassNo(ClassNo);
- return Success(stuInfo);
- }
-
- /// <summary>
- /// 根据帐号获取学生的信息
- /// </summary>
- /// <param name="Account"></param>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetStuInfoBasicEntityByStuName(string name)
- {
- var stuInfo = stuInfoBasicIBLL.GetStuInfoBasicEntityByStuName(name);
-
- return Success(stuInfo);
- }
-
- /// <summary>
- /// 获取左侧树形数据
- /// <summary>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetTree()
- {
- var data = stuInfoBasicIBLL.GetTree();
- return Success(data);
- }
- #endregion
-
- #region 提交数据
-
- /// <summary>
- /// 领取毕业证
- /// </summary>
- /// <param name="keyValue">学生id</param>
- /// <returns></returns>
- [HttpPost]
- [AjaxOnly]
-
- public ActionResult GetCard(string keyValue,string status, string strEntity)
- {
- if (status == "1")//领取
- {
- StuInfoBasicEntity entity = strEntity.ToObject<StuInfoBasicEntity>();
- stuInfoBasicIBLL.GetCard(keyValue, status, entity);
- }
- else//取消领取
- {
- stuInfoBasicIBLL.GetCard(keyValue,status,new StuInfoBasicEntity());
- }
- return Success("操作成功");
- }
-
- /// <summary>
- /// 图书资料归还
- /// </summary>
- /// <param name="keyValue">学生id</param>
- /// <returns></returns>
- [HttpPost]
- [AjaxOnly]
-
- public ActionResult IsReturnBooks(string keyValue, string status)
- {
- stuInfoBasicIBLL.IsReturnBooks(keyValue, status);
- return Success("操作成功");
- }
-
- /// <summary>
- /// 就业协议备案
- /// </summary>
- /// <param name="keyValue">学生id</param>
- /// <returns></returns>
- [HttpPost]
- [AjaxOnly]
-
- public ActionResult IsEmployAgree(string keyValue, string status)
- {
- stuInfoBasicIBLL.IsEmployAgree(keyValue, status);
- return Success("操作成功");
- }
-
- /// <summary>
- /// 学杂费结算
- /// </summary>
- /// <param name="keyValue">学生id</param>
- /// <returns></returns>
- [HttpPost]
- [AjaxOnly]
-
- public ActionResult IsFeeSettle(string keyValue, string status)
- {
- stuInfoBasicIBLL.IsFeeSettle(keyValue, status);
- return Success("操作成功");
- }
-
- /// <summary>
- /// 办理退住手续
- /// </summary>
- /// <param name="keyValue">学生id</param>
- /// <returns></returns>
- [HttpPost]
- [AjaxOnly]
-
- public ActionResult IsCheckOut(string keyValue, string status)
- {
- stuInfoBasicIBLL.IsCheckOut(keyValue, status);
- return Success("操作成功");
- }
-
- /// <summary>
- /// 校园卡注销
- /// </summary>
- /// <param name="keyValue">学生id</param>
- /// <returns></returns>
- [HttpPost]
- [AjaxOnly]
-
- public ActionResult IsCardDeregistrate(string keyValue, string status)
- {
- stuInfoBasicIBLL.IsCardDeregistrate(keyValue, status);
- return Success("操作成功");
- }
-
- /// <summary>
- /// 档案与组织关系转出
- /// </summary>
- /// <param name="keyValue">学生id</param>
- /// <returns></returns>
- [HttpPost]
- [AjaxOnly]
-
- public ActionResult IsFileTransfer(string keyValue, string status,string fort)
- {
- stuInfoBasicIBLL.IsFileTransfer(keyValue, status, fort);
- return Success("操作成功");
- }
- /// <summary>
- /// 学生毕业归档
- /// </summary>
- /// <param name="keyValue">学生id</param>
- /// <returns></returns>
- [HttpPost]
- [AjaxOnly]
-
- public ActionResult StuStore()
- {
- stuInfoBasicIBLL.StuStore();
- return Success("操作成功");
- }
-
- /// <summary>
- /// 删除实体数据
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- [HttpPost]
- [AjaxOnly]
- public ActionResult DeleteForm(string keyValue)
- {
- stuInfoBasicIBLL.DeleteEntity(keyValue);
- return Success("删除成功!");
- }
- /// <summary>
- /// 保存实体数据(新增、修改)
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- [HttpPost]
- [ValidateAntiForgeryToken]
- [AjaxOnly]
- public ActionResult SaveForm(string keyValue, string strEntity)
- {
- StuInfoBasicEntity entity = strEntity.ToObject<StuInfoBasicEntity>();
- entity.SyncFlag = false;
- var model = stuInfoBasicIBLL.GetStuInfoBasicEntityByStuNo(entity.StuNo);
- if (string.IsNullOrEmpty(keyValue))
- {
- if (model != null)
- {
- return Fail("学生编号已存在!");
- }
- }
- else
- {
- if (model != null && model.StuId != keyValue)
- {
- return Fail("学生编号已存在!");
- }
- entity.SyncFlag = true;
- //判断排课同步数据是否存在:若存在,清除同步数据;
- var arrangeLessonSyncList = arrangeLessonSyncIBLL.GetArrangeLessonSyncListByTableId(keyValue);
- if (arrangeLessonSyncList.Any())
- {
- arrangeLessonSyncIBLL.DeleteEntityByTableId(keyValue);
- }
- else
- {
- entity.SyncFlag = false;
- }
- }
- stuInfoBasicIBLL.SaveEntity(keyValue, entity);
- return Success("保存成功!");
- }
-
- [HttpPost]
- [AjaxOnly]
- public ActionResult CreateGraduateNoByMajor(string CityCode, string SchoolCode, string MajorList)
- {
- stuInfoBasicIBLL.CreateGraduateNoByMajor(CityCode, SchoolCode, MajorList);
- return Success("生成成功");
- }
- /// <summary>
- /// 按学号生成毕业证号
- /// </summary>
- /// <returns></returns>
- [HttpPost]
- [AjaxOnly]
- public ActionResult DoCreateGraduateNo()
- {
- stuInfoBasicIBLL.DoCreateGraduateNo();
- return Success("生成成功");
- }
-
- /// <summary>
- /// 审核
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- [HttpPost]
- [AjaxOnly]
- public ActionResult Check(string keyValue)
- {
- var keyValueArr = keyValue.Split(',');
- foreach (var item in keyValueArr)
- {
- var StuInfoBasicData = stuInfoBasicIBLL.GetStuInfoBasicEntity(item);
- if (StuInfoBasicData != null)
- {
- StuInfoBasicData.CheckMark = "1";
- stuInfoBasicIBLL.SaveEntity(item, StuInfoBasicData);
- }
- }
-
- return Success("审核成功!");
- }
-
- /// <summary>
- /// 取消审核
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- [HttpPost]
- [AjaxOnly]
- public ActionResult UnCheck(string keyValue)
- {
- var keyValueArr = keyValue.Split(',');
- foreach (var item in keyValueArr)
- {
- var StuInfoBasicData = stuInfoBasicIBLL.GetStuInfoBasicEntity(item);
- if (StuInfoBasicData != null)
- {
- StuInfoBasicData.CheckMark = "0";
- stuInfoBasicIBLL.SaveEntity(item, StuInfoBasicData);
- }
- }
-
- return Success("取消审核成功!");
- }
-
-
- /// <summary>
- /// 全部审核
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- [HttpPost]
- [AjaxOnly]
- public ActionResult CheckAll()
- {
- stuInfoBasicIBLL.CheckAll();
- return Success("全部审核成功!");
- }
- /// <summary>
- /// 准许学生毕业操作
- /// <param name="keyValue">学号</param>
- /// <summary>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult AllowGraduate(string stuNo, string status)
- {
- stuInfoBasicIBLL.AllowGraduate(stuNo, status);
- return Success("操作成功!");
- }
-
-
- [HttpPost]
- [AjaxOnly]
- public ActionResult IsPhoto(string stuId, string base64url)
- {
- var loginuser = LoginUserInfo.Get();
- //头像处理
- var folderId = Guid.NewGuid().ToString();
-
- string filePath = Config.GetValue("AnnexesFile");
- string uploadDate = DateTime.Now.ToString("yyyyMMdd");
- string FileEextension = ".png";
- string fileGuid = Guid.NewGuid().ToString();
-
- string virtualPath = string.Format("{0}/{1}/{2}/{3}{4}", filePath, loginuser.account, uploadDate, fileGuid, FileEextension);
-
- //创建文件夹
- string path = Path.GetDirectoryName(virtualPath);
- Directory.CreateDirectory(path);
- AnnexesFileEntity fileAnnexesEntity = new AnnexesFileEntity();
- if (!System.IO.File.Exists(virtualPath))
- {
- byte[] bytes = Convert.FromBase64String(base64url.Replace("data:image/png;base64,", ""));
- FileInfo file = new FileInfo(virtualPath);
- FileStream fs = file.Create();
- fs.Write(bytes, 0, bytes.Length);
- fs.Close();
-
- //文件信息写入数据库
- fileAnnexesEntity.F_Id = fileGuid;
- fileAnnexesEntity.F_FileName = "userphoto.png";
- fileAnnexesEntity.F_FilePath = virtualPath;
- fileAnnexesEntity.F_FileSize = bytes.Length.ToString();
- fileAnnexesEntity.F_FileExtensions = FileEextension;
- fileAnnexesEntity.F_FileType = FileEextension.Replace(".", "");
- fileAnnexesEntity.F_CreateUserId = loginuser.userId;
- fileAnnexesEntity.F_CreateUserName = loginuser.realName;
- annexesFileIbll.SaveEntity(folderId, fileAnnexesEntity);
-
-
- var stuEntity = stuInfoBasicIBLL.GetStuInfoBasicEntity(stuId);
- stuEntity.Photo = folderId;
- stuInfoBasicIBLL.SaveEntity(stuEntity.StuId, stuEntity);
- return Success("上传成功");
- }
- else
- {
- return Fail("上传失败");
- }
- }
-
-
-
- /// <summary>
- /// 同步照片
- /// <summary>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult SynPhoto()
- {
- stuInfoBasicIBLL.SynPhoto();
- return Success("同步成功!");
- }
- #endregion
- }
- }
|