|
- using Learun.Util;
- using System.Data;
- using Learun.Application.TwoDevelopment.EducationalAdministration;
- using System.Web.Mvc;
- using System.Collections.Generic;
- using System.Linq;
- using Learun.Application.TwoDevelopment.LogisticsManagement;
- using Newtonsoft.Json;
-
- namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers
- {
- /// <summary>
- /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
- /// Copyright (c) 2013-2018 北京泉江科技有限公司
- /// 创 建:超级管理员
- /// 日 期:2019-01-28 17:30
- /// 描 述:教室信息管理
- /// </summary>
- public class ClassroomInfoController : MvcControllerBase
- {
- private ClassroomInfoIBLL classroomInfoIBLL = new ClassroomInfoBLL();
- private ArrangeLessonSyncIBLL arrangeLessonSyncIBLL = new ArrangeLessonSyncBLL();
-
- #region 视图功能
-
- /// <summary>
- /// 主页面
- /// <summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult Index()
- {
- return View();
- }
- /// <summary>
- /// 表单页
- /// <summary>
- /// <returns></returns>
- [HttpGet]
- public ActionResult Form()
- {
- return View();
- }
- #endregion
-
- #region 获取数据
-
- /// <summary>
- /// 获取页面显示列表数据
- /// <summary>
- /// <param name="queryJson">查询参数</param>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetPageList(string pagination, string queryJson)
- {
- Pagination paginationobj = pagination.ToObject<Pagination>();
- var data = classroomInfoIBLL.GetPageList(paginationobj, queryJson);
- var jsonData = new
- {
- rows = data,
- total = paginationobj.total,
- page = paginationobj.page,
- records = paginationobj.records
- };
- return Success(jsonData);
- }
-
-
- [HttpPost, ValidateInput(false)]
- public ActionResult ExportList(string queryJson)
- {
- var data = classroomInfoIBLL.GetList(queryJson).ToList();
- var result = new List<Dictionary<string, string>>();
- if (data.Any())
- {
- foreach (var item in data)
- {
- var aaa = new Dictionary<string, string>();
- aaa.Add("ClassroomName", item.ClassroomName);
- aaa.Add("ClassroomNo", item.ClassroomNo);
- aaa.Add("StrClassroomType", item.StrClassroomType);
- aaa.Add("StrCompany", item.StrCompany);
- aaa.Add("StrClassroomBuildingNo", item.StrClassroomBuildingNo);
- aaa.Add("ClassroomFloor", item.ClassroomFloor);
- aaa.Add("ContainStuNum", item.ContainStuNum.ToString());
- aaa.Add("TestContainStuNum", item.TestContainStuNum.ToString());
- aaa.Add("StrCheckMark", item.StrCheckMark);
-
- result.Add(aaa);
- }
- }
- var resultStr = JsonConvert.SerializeObject(result);
-
- //数据源
- var exportTable = resultStr.ToTable();
- //设置导出格式
- ExcelConfig excelconfig = new ExcelConfig();
- excelconfig.Title = "教室信息";
- excelconfig.TitleFont = "微软雅黑";
- excelconfig.TitlePoint = 20;
- excelconfig.FileName = "教室信息.xls";
- excelconfig.IsAllSizeColumn = true;
- //每一列的设置,没有设置的列信息,系统将按datatable中的列名导出
- excelconfig.ColumnEntity = new List<ColumnModel>();
- excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "ClassroomName", ExcelColumn = "教室名称" });
- excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "ClassroomNo", ExcelColumn = "教室编号" });
- excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "StrClassroomType", ExcelColumn = "教室类型" });
- excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "StrCompany", ExcelColumn = "校区" });
- excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "StrClassroomBuildingNo", ExcelColumn = "教学楼" });
- excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "ClassroomFloor", ExcelColumn = "所在楼层" });
- excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "ContainStuNum", ExcelColumn = "容纳人数" });
- excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "TestContainStuNum", ExcelColumn = "考试人数" });
- excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "StrCheckMark", ExcelColumn = "是否启用" });
-
- //调用导出方法
- ExcelHelper.ExcelDownload(exportTable, excelconfig);
-
- return Success("导出成功!");
- }
- /// <summary>
- /// 获取表单数据
- /// <summary>
- /// <returns></returns>
- [HttpGet]
- [AjaxOnly]
- public ActionResult GetFormData(string keyValue)
- {
- var ClassroomInfoData = classroomInfoIBLL.GetClassroomInfoEntity(keyValue);
- var jsonData = new
- {
- ClassroomInfo = ClassroomInfoData,
- };
- return Success(jsonData);
- }
- #endregion
-
- #region 提交数据
- [HttpPost]
- [AjaxOnly]
- public ActionResult Lock(string keyValue)
- {
- classroomInfoIBLL.Lock(keyValue);
- return Success("操作成功!");
- }
- [HttpPost]
- [AjaxOnly]
- public ActionResult UnLock(string keyValue)
- {
- classroomInfoIBLL.UnLock(keyValue);
- return Success("操作成功!");
- }
- /// <summary>
- /// 删除实体数据
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- [HttpPost]
- [AjaxOnly]
- public ActionResult DeleteForm(string keyValue)
- {
- classroomInfoIBLL.DeleteEntity(keyValue);
- return Success("删除成功!");
- }
- /// <summary>
- /// 保存实体数据(新增、修改)
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- [HttpPost]
- [ValidateAntiForgeryToken]
- [AjaxOnly]
- public ActionResult SaveForm(string keyValue, string strEntity)
- {
- ClassroomInfoEntity entity = strEntity.ToObject<ClassroomInfoEntity>();
- entity.SyncFlag = false;
- var model = classroomInfoIBLL.GetClassroomInfoEntityByNo(entity.ClassroomNo);
- if (string.IsNullOrEmpty(keyValue))
- {
- if (model != null)
- {
- return Fail("教室编号已存在!");
- }
- }
- else
- {
- if (model != null && model.ClassroomId != keyValue)
- {
- return Fail("教室编号已存在!");
- }
- entity.SyncFlag = true;
- //判断排课同步数据是否存在:若存在,清除同步数据;
- var arrangeLessonSyncList = arrangeLessonSyncIBLL.GetArrangeLessonSyncListByTableId(keyValue);
- if (arrangeLessonSyncList.Any())
- {
- arrangeLessonSyncIBLL.DeleteEntityByTableId(keyValue);
- }
- else
- {
- entity.SyncFlag = false;
- }
- }
- classroomInfoIBLL.SaveEntity(keyValue, entity);
- return Success("保存成功!");
- }
- #endregion
-
- }
- }
|