using Dapper;
using Learun.DataBase.Repository;
using Learun.Util;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using Learun.Application.Base.AuthorizeModule;
using Learun.Application.Organization;
using System.Reflection;
using Learun.Application.Base.SystemModule;
using Learun.Application.TwoDevelopment.LogisticsManagement;
using Learun.Cache.Base;
using Learun.Cache.Factory;
using System.IO;
using System.Security.Policy;
using System.Data.SqlClient;
namespace Learun.Application.TwoDevelopment.EducationalAdministration
{
///
/// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
/// Copyright (c) 2013-2018 北京泉江科技有限公司
/// 创 建:超级管理员
/// 日 期:2019-02-21 16:53
/// 描 述:学生学籍
///
public class StuInfoBasicService : RepositoryFactory
{
#region 获取数据
///
/// 获取页面显示列表数据
///
/// 查询参数
///
public IEnumerable GetPageList(Pagination pagination, string queryJson)
{
try
{
var strSql = new StringBuilder();
strSql.Append("SELECT t.* ");
strSql.Append(" FROM StuInfoBasic t ");
strSql.Append(" WHERE 1=1 ");
var queryParam = queryJson.ToJObject();
// 虚拟参数
var dp = new DynamicParameters(new { });
if (!queryParam["StuNo"].IsEmpty())
{
dp.Add("StuNo", "%" + queryParam["StuNo"].ToString() + "%", DbType.String);
strSql.Append(" AND t.StuNo Like @StuNo ");
}
if (!queryParam["StuName"].IsEmpty())
{
dp.Add("StuName", "%" + queryParam["StuName"].ToString() + "%", DbType.String);
strSql.Append(" AND t.StuName Like @StuName ");
}
if (!queryParam["DeptNo"].IsEmpty())
{
dp.Add("DeptNo", "" + queryParam["DeptNo"].ToString() + "", DbType.String);
strSql.Append(" AND t.DeptNo=@DeptNo ");
}
if (!queryParam["MajorNo"].IsEmpty())
{
dp.Add("MajorNo", "" + queryParam["MajorNo"].ToString() + "", DbType.String);
strSql.Append(" AND t.MajorNo=@MajorNo ");
}
if (!queryParam["ClassNo"].IsEmpty())
{
dp.Add("ClassNo", "" + queryParam["ClassNo"].ToString() + "", DbType.String);
strSql.Append(" AND t.ClassNo=@ClassNo ");
}
if (!queryParam["Grade"].IsEmpty())
{
dp.Add("Grade", "" + queryParam["Grade"].ToString() + "", DbType.String);
strSql.Append(" AND t.Grade=@Grade ");
}
if (!queryParam["GenderNo"].IsEmpty())
{
dp.Add("GenderNo", "" + queryParam["GenderNo"].ToString() + "", DbType.String);
strSql.Append(" AND t.GenderNo=@GenderNo ");
}
if (!queryParam["IdentityCardNo"].IsEmpty())
{
dp.Add("IdentityCardNo", "%" + queryParam["IdentityCardNo"].ToString() + "%", DbType.String);
strSql.Append(" AND t.IdentityCardNo Like @IdentityCardNo ");
}
if (!queryParam["NationalityNo"].IsEmpty())
{
dp.Add("NationalityNo", "" + queryParam["NationalityNo"].ToString() + "", DbType.String);
strSql.Append(" AND t.NationalityNo = @NationalityNo ");
}
if (!queryParam["FinishSchoolMark"].IsEmpty())
{
dp.Add("FinishSchoolMark", "" + queryParam["FinishSchoolMark"].ToString() + "", DbType.String);
if (queryParam["FinishSchoolMark"].ToString() == "0")
{
strSql.Append(" AND (t.FinishSchoolMark is null or t.FinishSchoolMark='0') ");
}
else
{
strSql.Append(" AND t.FinishSchoolMark=@FinishSchoolMark ");
}
}
if (!queryParam["Remark"].IsEmpty())
{
dp.Add("Remark", "%" + queryParam["Remark"].ToString() + "%", DbType.String);
strSql.Append(" AND t.Remark Like @Remark ");
}
if (!queryParam["CheckMark"].IsEmpty())
{
dp.Add("CheckMark", "" + queryParam["CheckMark"].ToString() + "", DbType.String);
if (queryParam["CheckMark"].ToString() == "1")
{
strSql.Append(" AND t.CheckMark=@CheckMark ");
}
else
{
strSql.Append(" AND (t.CheckMark is null or t.CheckMark='0') ");
}
}
if (!queryParam["StuCode"].IsEmpty())
{
dp.Add("StuCode", "%" + queryParam["StuCode"].ToString() + "%", DbType.String);
strSql.Append(" AND t.StuCode Like @StuCode ");
}
if (!queryParam["PartyFaceNo"].IsEmpty())
{
dp.Add("PartyFaceNo", "" + queryParam["PartyFaceNo"].ToString() + "", DbType.String);
strSql.Append(" AND t.PartyFaceNo = @PartyFaceNo ");
}
if (!queryParam["EduSystem"].IsEmpty())
{
dp.Add("EduSystem", "" + queryParam["EduSystem"].ToString() + "", DbType.String);
strSql.Append(" AND t.EduSystem = @EduSystem ");
}
if (!queryParam["HealthStatus"].IsEmpty())
{
dp.Add("HealthStatus", "" + queryParam["HealthStatus"].ToString() + "", DbType.String);
strSql.Append(" AND t.HealthStatus = @HealthStatus ");
}
if (!queryParam["StudyModality"].IsEmpty())
{
dp.Add("StudyModality", "" + queryParam["StudyModality"].ToString() + "", DbType.String);
strSql.Append(" AND t.StudyModality = @StudyModality ");
}
if (!queryParam["Photo"].IsEmpty())
{
dp.Add("Photo", "" + queryParam["Photo"].ToString() + "", DbType.String);
if (queryParam["Photo"].ToString() == "1")
{
strSql.Append(" AND t.Photo is not null ");
}
else
{
strSql.Append(" AND t.Photo is null ");
}
}
#region 学籍异动专项查询条件 与其他无关
if (!queryParam["Mustsql"].IsEmpty())
{
strSql.Append(" AND stuno not in(select stuno from StuTransferInfo where F_EnabledMark =0) ");
}
//查询去除 退学,休学,开除,死亡,失踪,注销,自动退学
if (!queryParam["RestAgainSql"].IsEmpty())
{
strSql.Append(" AND stuno not in(select stuno from StuTransferInfo where anomaloustype = '02,05,06,10,11,12,13,14' and F_EnabledMark =0 )");
}
if (!queryParam["RolloffSql"].IsEmpty())//转出
{
strSql.Append(" AND stuno not in(select stuno from StuTransferInfo where anomaloustype = '02')");
}
#endregion
return this.BaseRepository("CollegeMIS").FindList(strSql.ToString(), dp, pagination);
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
internal List GetSaveClassStudents(string account)
{
try
{
var classNO = this.BaseRepository("CollegeMIS").FindEntity(a => a.StuNo == account).ClassNo;
return this.BaseRepository("CollegeMIS").FindList(a => a.ClassNo == classNO).Select(a => a.StuNo).ToList();
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
internal bool GetAny()
{
try
{
return this.BaseRepository("CollegeMIS").FindList().ToList().Count > 0 ? true : false;
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
internal StuInfoBasicEntity GetStuInfoBasicEntityByStuNo(string enCode)
{
try
{
var data = this.BaseRepository("CollegeMIS").FindEntity(a => a.StuNo == enCode);
if (data != null && (data.Photo != null && data.Photo != ""))
{
var url = this.BaseRepository().FindEntity(a => a.F_FolderId == data.Photo)?.F_FilePath;
if (!string.IsNullOrEmpty(url))
{
url = "/" + url.Substring(url.IndexOf("Resource"));
data.Photo = url;
}
}
return data;
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
public StuInfoBasicEntity GetStuInfoBasicEntityByStuName(string name)
{
try
{
return this.BaseRepository("CollegeMIS").FindEntity(a => a.StuName == name);
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
public StuInfoBasicEntity GetStuInfoBasicEntityByStuNoOrStuName(string stuno, string stuname)
{
try
{
string sql = "select * from StuInfoBasic where 1=1";
if (!string.IsNullOrEmpty(stuno))
{
sql += $" and stuno='{stuno}'";
}
if (!string.IsNullOrEmpty(stuname))
{
sql += $" and stuname='{stuname}'";
}
return this.BaseRepository("CollegeMIS").FindList(sql).FirstOrDefault();
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 获取StuInfoBasic表实体数据
/// 主键
///
///
public StuInfoBasicEntity GetStuInfoBasicEntity(string keyValue)
{
try
{
return this.BaseRepository("CollegeMIS").FindEntity(keyValue);
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 获取准许毕业的学生的专业
///
///
public List GetMajorInfoWithGraduation()
{
try
{
var stuInfo = this.BaseRepository("CollegeMIS")
.FindList(a => a.FinishSchoolMark == "1").ToList();
var majorNoList = stuInfo.GroupBy(a => a.MajorNo).Select(a => a.Key).ToList();
var majorList = this.BaseRepository("CollegeMIS")
.FindList(a => majorNoList.Contains(a.MajorNo)).ToList();
return majorList;
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 获取StuInfoBasic表实体数据
/// 主键
///
///
public void CreateGraduateNoByMajor(string CityCode, string SchoolCode, string MajorList)
{
try
{
var year = DateTime.Now.Year.ToString().Substring(2, 2);
var firstStr = year + CityCode + SchoolCode;
//获取最大的序号
var DiplomaNoList = this.BaseRepository("CollegeMIS")
.FindList(a => a.DiplomaNo.Contains(firstStr)).Select(a => a.DiplomaNo.Substring(a.DiplomaNo.Length - 4, 4).ToInt()).ToList();
var orderNo = 1;
if (DiplomaNoList.Count() > 0)
{
var MaxDiplomaNo = DiplomaNoList.Max(a => a);
orderNo = MaxDiplomaNo + 1;
}
var ListMajorNo = MajorList.Split(',').ToList();
foreach (var MajorNo in ListMajorNo)
{
var stuList = this.BaseRepository("CollegeMIS")
.FindList(a => a.MajorNo == MajorNo)
.Where(a => a.DiplomaNo == null || a.DiplomaNo == "");
if (stuList.Count() > 0)
{
foreach (var stuInfo in stuList)
{
stuInfo.DiplomaNo = firstStr + orderNo.ToString().PadLeft(4, '0');
this.BaseRepository("CollegeMIS").Update(stuInfo);
orderNo++;
}
}
}
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 获取StuInfoBasic表实体数据
/// 主键
///
///
public void DoCreateGraduateNo()
{
var db = this.BaseRepository("CollegeMIS").BeginTrans();
try
{
//年份
var year = DateTime.Now.Year.ToString().Substring(2, 2);
//学校编码十位
var schoolCode = "3642000004";
//顺序号四位
var numberCode = 1;
//获取最大的序号
var DiplomaNoList = this.BaseRepository("CollegeMIS").FindList(x => x.DiplomaNo.Contains(year + schoolCode)).Select(x => x.DiplomaNo).ToList();
if (DiplomaNoList.Any())
{
numberCode = DiplomaNoList.Max(x => x).Substring(12, 4).ToInt() + 1;
}
//获取所有要毕业的学生按年级查询出来,再按学号进行由小到大排序,
var stuList = this.BaseRepository("CollegeMIS").FindList(x => (x.FinishSchoolMark == "1" || x.FinishSchoolMark == "2") && (x.DiplomaNo == null || x.DiplomaNo == "")).OrderBy(x => x.Grade).ThenBy(x => x.StuNo);
foreach (var item in stuList)
{
item.DiplomaNo = year + schoolCode + numberCode.ToString().PadLeft(4, '0');
db.Update(item);
numberCode++;
}
db.Commit();
}
catch (Exception ex)
{
db.Rollback();
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 获取StuInfoBasic表实体数据
/// 主键
///
///
public StuInfoBasicEntity GetStuNoByAccount(string keyValue)
{
try
{
return this.BaseRepository("CollegeMIS").FindEntity(a => a.StuNo == keyValue);
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 获取树形数据
///
///
public DataTable GetSqlTree()
{
try
{
var ClassDiredctorNo = LoginUserInfo.Get().account;
string sql = " SELECT * FROM dbo.ClassInfo where CheckMark=1 ";
if (ClassDiredctorNo.ToUpper() != "SYSTEM" && !LoginUserInfo.Get().roleIds.Contains("818c298e-ea1d-41d5-be4a-f06b092a420f"))
{
sql += $" and ClassDiredctorNo='{ClassDiredctorNo}' or ClassTutorNo='{ClassDiredctorNo}'";
}
return this.BaseRepository("CollegeMIS").FindTable(sql);
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
#endregion
#region 提交数据
///
/// 审核全部
///
public void CheckAll()
{
try
{
this.BaseRepository("CollegeMIS").ExecuteBySql("update StuInfoBasic set CheckMark=1");
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 准许毕业操作
///
public void AllowGraduate(string stuNo, string status)
{
var db = this.BaseRepository("CollegeMIS").BeginTrans();
try
{
var list = stuNo.Split(',').ToList().Select(a => "'" + a + "'");
var stulist = string.Join(",", list);
if (status == "1")//准许毕业
{
//判断离校手续是否全办完,若满足则修改毕业状态为已毕业和毕业时间,若不满足则修改毕业状态为准许毕业;
foreach (var item in stuNo.Split(','))
{
var itementity = db.FindEntity(x => x.StuNo == item);
if (itementity.ReturnBooksStatus == "1" && itementity.EmployAgreeStatus == "1" && itementity.FeeSettleStatus == "1" && itementity.CheckOutStatus == "1" && itementity.CardDeregistrateStatus == "1" && itementity.DiplomaReceiveStatus == "1" && itementity.FileTransferStatus == "1")
{
db.ExecuteBySql($"UPDATE dbo.StuInfoBasic SET FinishSchoolMark ='2',FinishSchoolDate='" + DateTime.Now + "' WHERE StuNo='" + item + "' ");
}
else
{
db.ExecuteBySql($"UPDATE dbo.StuInfoBasic SET FinishSchoolMark ='{status}',FinishSchoolDate=null WHERE StuNo='" + item + "' ");
}
}
}
else//不准毕业
{
//毕业状态修改为不准毕业,毕业时间为空;
db.ExecuteBySql($"UPDATE dbo.StuInfoBasic SET FinishSchoolMark ='{status}',FinishSchoolDate=null WHERE StuNo in({stulist})");
}
db.Commit();
}
catch (Exception ex)
{
db.Rollback();
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
public void SynPhoto()
{
try
{
var stuList = this.BaseRepository("CollegeMIS").FindList().ToList();
var url = Config.GetValue("AnnexesFile");
var loginUserInfo = LoginUserInfo.Get();
foreach (var stuInfo in stuList)
{
if (!string.IsNullOrEmpty(stuInfo.IdentityCardNo))
{
//判断要上传的照片在本地服务器中是否存在
var photoPath = $"{url}/UserPhoto/{stuInfo.IdentityCardNo}.jpg";
if (System.IO.File.Exists(photoPath))
{
//文件大小
FileInfo fileInfo = new FileInfo(photoPath);
var size = fileInfo.Length;
//学籍表中照片字段不为空
if (!string.IsNullOrEmpty(stuInfo.Photo))
{
var annex = this.BaseRepository().FindEntity(a => a.F_FolderId == stuInfo.Photo);
if (annex == null)
{
var annexEntity = new AnnexesFileEntity()
{
F_Id = Guid.NewGuid().ToString(),
F_FolderId = stuInfo.Photo,
F_FileName = stuInfo.IdentityCardNo + ".jpg",
F_FilePath = photoPath,
F_FileSize = size.ToString(),
F_FileExtensions = ".jpg",
F_FileType = "jpg",
F_CreateUserId = loginUserInfo.userId,
F_CreateUserName = loginUserInfo.realName
};
annexEntity.Create();
this.BaseRepository().Insert(annexEntity);
}
else
{
annex.F_FileName = stuInfo.IdentityCardNo + ".jpg";
annex.F_FilePath = photoPath;
annex.F_FileSize = size.ToString();
annex.F_FileExtensions = ".jpg";
annex.F_FileType = "jpg";
annex.F_CreateDate = DateTime.Now;
annex.F_CreateUserId = loginUserInfo.userId;
annex.F_CreateUserName = loginUserInfo.realName;
this.BaseRepository().Update(annex);
}
}
else
{
//学籍表
stuInfo.Photo = Guid.NewGuid().ToString();
//附件表
var annexEntity = new AnnexesFileEntity()
{
F_Id = Guid.NewGuid().ToString(),
F_FolderId = stuInfo.Photo,
F_FileName = stuInfo.IdentityCardNo + ".jpg",
F_FilePath = photoPath,
F_FileSize = size.ToString(),
F_FileExtensions = ".jpg",
F_FileType = "jpg",
F_CreateUserId = loginUserInfo.userId,
F_CreateUserName = loginUserInfo.realName
};
annexEntity.Create();
this.BaseRepository("CollegeMIS").Update(stuInfo);
this.BaseRepository().Insert(annexEntity);
}
}
}
}
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 删除实体数据
/// 主键
///
///
public void DeleteEntity(string keyValue)
{
var db = this.BaseRepository("CollegeMIS").BeginTrans();
try
{
//单个删除
//this.BaseRepository("CollegeMIS").Delete(t => t.StuId == keyValue);
//多个删除
var keyValueArr = keyValue.Split(',');
foreach (var item in keyValueArr)
{
db.Delete(t => t.StuId == item);
}
db.Commit();
}
catch (Exception ex)
{
db.Rollback();
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 领取毕业证
/// 主键
///
///
public void GetCard(string keyValue, string status, StuInfoBasicEntity entity)
{
var db = this.BaseRepository("CollegeMIS").BeginTrans();
try
{
if (status == "1")//领取
{
var now = DateTime.Now;
var keyValueArr = keyValue.Split(',');
foreach (var item in keyValueArr)
{
var sql = $"UPDATE StuInfoBasic SET DiplomaReceiveStatus='{status}',DiplomaReceiveDate='{now}',DiplomaReceiveSign='{entity.DiplomaReceiveSign}',DiplomaReceiveIdcard='{entity.DiplomaReceiveIdcard}',DiplomaReceiveRemark='{entity.DiplomaReceiveRemark}' WHERE StuId='{item}'";
db.ExecuteBySql(sql);
//判断离校手续是否全办完 且 毕业状态为准许毕业,若同时满足则修改毕业状态为已毕业和毕业时间;
var sql2 = $"update StuInfoBasic set FinishSchoolMark='2',FinishSchoolDate='{now}' where StuId='{item}' and FinishSchoolMark='1' and ReturnBooksStatus='1' and EmployAgreeStatus='1' and FeeSettleStatus='1' and CheckOutStatus='1' and CardDeregistrateStatus='1' and FileTransferStatus='1' and TissueStatus='1' ";
db.ExecuteBySql(sql2);
}
}
else
{
var keyValueArr = keyValue.Split(',');
foreach (var item in keyValueArr)
{
var sql = $"UPDATE StuInfoBasic SET DiplomaReceiveStatus='{status}',DiplomaReceiveDate=null,DiplomaReceiveSign=null,DiplomaReceiveIdcard=null,DiplomaReceiveRemark=null WHERE StuId='{item}'";
db.ExecuteBySql(sql);
//判断毕业状态是否为已毕业,若是,则毕业状态修改为准许毕业,毕业时间为空;
var sql2 = $"UPDATE StuInfoBasic SET FinishSchoolMark='1',FinishSchoolDate=null WHERE StuId='{item}' and FinishSchoolMark='2' ";
db.ExecuteBySql(sql2);
}
}
db.Commit();
}
catch (Exception ex)
{
db.Rollback();
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 图书资料归还
/// 主键
///
///
public void IsReturnBooks(string keyValue, string status)
{
var db = this.BaseRepository("CollegeMIS").BeginTrans();
try
{
if (status == "1")//归还
{
var now = DateTime.Now;
var keyValueArr = keyValue.Split(',');
foreach (var item in keyValueArr)
{
var sql = $"UPDATE StuInfoBasic SET ReturnBooksStatus='{status}',ReturnBooksDate='{now}' WHERE StuId='{item}'";
db.ExecuteBySql(sql);
//判断离校手续是否全办完 且 毕业状态为准许毕业,若同时满足则修改毕业状态为已毕业和毕业时间;
var sql2 = $"update StuInfoBasic set FinishSchoolMark='2',FinishSchoolDate='{now}' where StuId='{item}' and FinishSchoolMark='1' and EmployAgreeStatus='1' and FeeSettleStatus='1' and CheckOutStatus='1' and CardDeregistrateStatus='1' and DiplomaReceiveStatus='1' and FileTransferStatus='1' and TissueStatus='1' ";
db.ExecuteBySql(sql2);
}
}
else
{
var keyValueArr = keyValue.Split(',');
foreach (var item in keyValueArr)
{
var sql = $"UPDATE StuInfoBasic SET ReturnBooksStatus='{status}',ReturnBooksDate=null WHERE StuId='{item}'";
db.ExecuteBySql(sql);
//判断毕业状态是否为已毕业,若是,则毕业状态修改为准许毕业,毕业时间为空;
var sql2 = $"UPDATE StuInfoBasic SET FinishSchoolMark='1',FinishSchoolDate=null WHERE StuId='{item}' and FinishSchoolMark='2' ";
db.ExecuteBySql(sql2);
}
}
db.Commit();
}
catch (Exception ex)
{
db.Rollback();
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 就业协议备案
/// 主键
///
///
public void IsEmployAgree(string keyValue, string status)
{
var db = this.BaseRepository("CollegeMIS").BeginTrans();
try
{
if (status == "1")//备案
{
var now = DateTime.Now;
var keyValueArr = keyValue.Split(',');
foreach (var item in keyValueArr)
{
var sql = $"UPDATE StuInfoBasic SET EmployAgreeStatus='{status}',EmployAgreeDate='{now}' WHERE StuId='{item}'";
db.ExecuteBySql(sql);
//判断离校手续是否全办完 且 毕业状态为准许毕业,若同时满足则修改毕业状态为已毕业和毕业时间;
var sql2 = $"update StuInfoBasic set FinishSchoolMark='2',FinishSchoolDate='{now}' where StuId='{item}' and FinishSchoolMark='1' and ReturnBooksStatus='1' and FeeSettleStatus='1' and CheckOutStatus='1' and CardDeregistrateStatus='1' and DiplomaReceiveStatus='1' and FileTransferStatus='1' and TissueStatus='1' ";
db.ExecuteBySql(sql2);
}
}
else
{
var keyValueArr = keyValue.Split(',');
foreach (var item in keyValueArr)
{
var sql = $"UPDATE StuInfoBasic SET EmployAgreeStatus='{status}',EmployAgreeDate=null WHERE StuId='{item}'";
db.ExecuteBySql(sql);
//判断毕业状态是否为已毕业,若是,则毕业状态修改为准许毕业,毕业时间为空;
var sql2 = $"UPDATE StuInfoBasic SET FinishSchoolMark='1',FinishSchoolDate=null WHERE StuId='{item}' and FinishSchoolMark='2' ";
db.ExecuteBySql(sql2);
}
}
db.Commit();
}
catch (Exception ex)
{
db.Rollback();
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 学杂费结算
/// 主键
///
///
public void IsFeeSettle(string keyValue, string status)
{
var db = this.BaseRepository("CollegeMIS").BeginTrans();
try
{
if (status == "1")//结算
{
var now = DateTime.Now;
var keyValueArr = keyValue.Split(',');
foreach (var item in keyValueArr)
{
var sql = $"UPDATE StuInfoBasic SET FeeSettleStatus='{status}',FeeSettleDate='{now}' WHERE StuId='{item}'";
db.ExecuteBySql(sql);
//判断离校手续是否全办完 且 毕业状态为准许毕业,若同时满足则修改毕业状态为已毕业和毕业时间;
var sql2 = $"update StuInfoBasic set FinishSchoolMark='2',FinishSchoolDate='{now}' where StuId='{item}' and FinishSchoolMark='1' and ReturnBooksStatus='1' and EmployAgreeStatus='1' and CheckOutStatus='1' and CardDeregistrateStatus='1' and DiplomaReceiveStatus='1' and FileTransferStatus='1' and TissueStatus='1' ";
db.ExecuteBySql(sql2);
}
}
else
{
var keyValueArr = keyValue.Split(',');
foreach (var item in keyValueArr)
{
var sql = $"UPDATE StuInfoBasic SET FeeSettleStatus='{status}',FeeSettleDate=null WHERE StuId='{item}'";
db.ExecuteBySql(sql);
//判断毕业状态是否为已毕业,若是,则毕业状态修改为准许毕业,毕业时间为空;
var sql2 = $"UPDATE StuInfoBasic SET FinishSchoolMark='1',FinishSchoolDate=null WHERE StuId='{item}' and FinishSchoolMark='2' ";
db.ExecuteBySql(sql2);
}
}
db.Commit();
}
catch (Exception ex)
{
db.Rollback();
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 办理退住手续
/// 主键
///
///
public void IsCheckOut(string keyValue, string status)
{
var db = this.BaseRepository("CollegeMIS").BeginTrans();
try
{
if (status == "1")//办理
{
var now = DateTime.Now;
var keyValueArr = keyValue.Split(',');
foreach (var item in keyValueArr)
{
var sql = $"UPDATE StuInfoBasic SET CheckOutStatus='{status}',CheckOutDate='{now}' WHERE StuId='{item}'";
db.ExecuteBySql(sql);
//判断离校手续是否全办完 且 毕业状态为准许毕业,若同时满足则修改毕业状态为已毕业和毕业时间;
var sql2 = $"update StuInfoBasic set FinishSchoolMark='2',FinishSchoolDate='{now}' where StuId='{item}' and FinishSchoolMark='1' and ReturnBooksStatus='1' and EmployAgreeStatus='1' and FeeSettleStatus='1' and CardDeregistrateStatus='1' and DiplomaReceiveStatus='1' and FileTransferStatus='1' and TissueStatus='1' ";
db.ExecuteBySql(sql2);
}
}
else
{
var keyValueArr = keyValue.Split(',');
foreach (var item in keyValueArr)
{
var sql = $"UPDATE StuInfoBasic SET CheckOutStatus='{status}',CheckOutDate=null WHERE StuId='{item}'";
db.ExecuteBySql(sql);
//判断毕业状态是否为已毕业,若是,则毕业状态修改为准许毕业,毕业时间为空;
var sql2 = $"UPDATE StuInfoBasic SET FinishSchoolMark='1',FinishSchoolDate=null WHERE StuId='{item}' and FinishSchoolMark='2' ";
db.ExecuteBySql(sql2);
}
}
db.Commit();
}
catch (Exception ex)
{
db.Rollback();
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 校园卡注销
/// 主键
///
///
public void IsCardDeregistrate(string keyValue, string status)
{
var db = this.BaseRepository("CollegeMIS").BeginTrans();
try
{
if (status == "1")//注销
{
var now = DateTime.Now;
var keyValueArr = keyValue.Split(',');
foreach (var item in keyValueArr)
{
var sql = $"UPDATE StuInfoBasic SET CardDeregistrateStatus='{status}',CardDeregistrateDate='{now}' WHERE StuId='{item}'";
db.ExecuteBySql(sql);
//判断离校手续是否全办完 且 毕业状态为准许毕业,若同时满足则修改毕业状态为已毕业和毕业时间;
var sql2 = $"update StuInfoBasic set FinishSchoolMark='2',FinishSchoolDate='{now}' where StuId='{item}' and FinishSchoolMark='1' and ReturnBooksStatus='1' and EmployAgreeStatus='1' and FeeSettleStatus='1' and CheckOutStatus='1' and DiplomaReceiveStatus='1' and FileTransferStatus='1' and TissueStatus='1' ";
db.ExecuteBySql(sql2);
}
}
else
{
var keyValueArr = keyValue.Split(',');
foreach (var item in keyValueArr)
{
var sql = $"UPDATE StuInfoBasic SET CardDeregistrateStatus='{status}',CardDeregistrateDate=null WHERE StuId='{item}'";
db.ExecuteBySql(sql);
//判断毕业状态是否为已毕业,若是,则毕业状态修改为准许毕业,毕业时间为空;
var sql2 = $"UPDATE StuInfoBasic SET FinishSchoolMark='1',FinishSchoolDate=null WHERE StuId='{item}' and FinishSchoolMark='2' ";
db.ExecuteBySql(sql2);
}
}
db.Commit();
}
catch (Exception ex)
{
db.Rollback();
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 档案与组织关系转出
/// 主键
///
///
public void IsFileTransfer(string keyValue, string status, string fort)
{
var db = this.BaseRepository("CollegeMIS").BeginTrans();
try
{
if (status == "1")//转出
{
var now = DateTime.Now;
var keyValueArr = keyValue.Split(',');
foreach (var item in keyValueArr)
{
if (fort == "0")
{
//档案
var sql = $"UPDATE StuInfoBasic SET FileTransferStatus='{status}',FileTransferDate='{now}' WHERE StuId='{item}'";
db.ExecuteBySql(sql);
//判断离校手续是否全办完 且 毕业状态为准许毕业,若同时满足则修改毕业状态为已毕业和毕业时间;
var sql2 = $"update StuInfoBasic set FinishSchoolMark='2',FinishSchoolDate='{now}' where StuId='{item}' and FinishSchoolMark='1' and ReturnBooksStatus='1' and EmployAgreeStatus='1' and FeeSettleStatus='1' and CheckOutStatus='1' and CardDeregistrateStatus='1' and DiplomaReceiveStatus='1' and TissueStatus='1'";
db.ExecuteBySql(sql2);
}
else
{
//组织
var sql1 = $"UPDATE StuInfoBasic SET TissueStatus='{status}',TissueDate='{now}' WHERE StuId='{item}'";
db.ExecuteBySql(sql1);
//判断离校手续是否全办完 且 毕业状态为准许毕业,若同时满足则修改毕业状态为已毕业和毕业时间;
var sql2 = $"update StuInfoBasic set FinishSchoolMark='2',FinishSchoolDate='{now}' where StuId='{item}' and FinishSchoolMark='1' and ReturnBooksStatus='1' and EmployAgreeStatus='1' and FeeSettleStatus='1' and CheckOutStatus='1' and CardDeregistrateStatus='1' and DiplomaReceiveStatus='1' and FileTransferStatus= '1'";
db.ExecuteBySql(sql2);
}
////判断离校手续是否全办完 且 毕业状态为准许毕业,若同时满足则修改毕业状态为已毕业和毕业时间;
//var sql2 = $"update StuInfoBasic set FinishSchoolMark='2',FinishSchoolDate='{now}' where StuId='{item}' and FinishSchoolMark='1' and ReturnBooksStatus='1' and EmployAgreeStatus='1' and FeeSettleStatus='1' and CheckOutStatus='1' and CardDeregistrateStatus='1' and DiplomaReceiveStatus='1' ";
//db.ExecuteBySql(sql2);
}
}
else
{
var keyValueArr = keyValue.Split(',');
foreach (var item in keyValueArr)
{
if (fort == "0")
{
var sql = $"UPDATE StuInfoBasic SET FileTransferStatus='{status}',FileTransferDate=null WHERE StuId='{item}'";
db.ExecuteBySql(sql);
}
else
{
var sql1 = $"UPDATE StuInfoBasic SET TissueStatus='{status}',TissueDate=null WHERE StuId='{item}'";
db.ExecuteBySql(sql1);
}
//判断毕业状态是否为已毕业,若是,则毕业状态修改为准许毕业,毕业时间为空;
var sql2 = $"UPDATE StuInfoBasic SET FinishSchoolMark='1',FinishSchoolDate=null WHERE StuId='{item}' and FinishSchoolMark='2' ";
db.ExecuteBySql(sql2);
}
}
db.Commit();
}
catch (Exception ex)
{
db.Rollback();
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 毕业生归档
///
///
public void StuStore()
{
/*
1.毕业生归档必须在6-8月份进行;
2.归档后的学生信息如:操行、奖惩、成绩、毕业证书等只有通过毕业生信息管理才能查询或打印;
3.毕业学生的账户将自动取消;
4.学生所占的床位也将自动退掉;
5.学生所在的班级置为已毕业班级;
6.归档操作后不可撤消,请谨慎操作!
*/
var db = this.BaseRepository("CollegeMIS").BeginTrans();
var adb = this.BaseRepository().BeginTrans();
try
{
//归档前提为毕业标志为2(已毕业)的学生
var stuInfos = db.FindList(a => a.FinishSchoolMark == "2");
foreach (var item in stuInfos)
{
//var StuInfoType = typeof(StuInfoBasicEntity);
//var PropertyInfoStuInfo = StuInfoType.GetProperties();
//var GraduateEntity = new StuInfoGraduateEntity();
//var typegraduate = typeof(StuInfoGraduateEntity);
//var PropertyInfoGraduate = typegraduate.GetProperties();
//foreach (var itemStuInfo in PropertyInfoStuInfo)
//{
// var objStuInfoType = itemStuInfo.GetValue(StuInfoType);
// foreach (var itemGraduate in PropertyInfoGraduate)
// {
// if (itemGraduate.Name == itemStuInfo.Name)
// {
// itemGraduate.SetValue(GraduateEntity, objStuInfoType, null);
// }
// }
//}
var accountInfo = adb.FindEntity(a => a.F_Account == item.StuNo);
if (accountInfo != null)
{
//删除账户
adb.Delete(accountInfo);
}
//清空宿舍信息
var dormitory = db.FindEntity(a => a.StudentID == item.StuNo);
if (dormitory != null)
{
dormitory.StudentID = "";
dormitory.StuName = "";
db.Update(dormitory);
//宿舍上一级房间,入住人数-1
var room = db.FindEntity(x => x.ID == dormitory.ParentID);
if (room != null)
{
if (room.CheckInStu.HasValue && room.CheckInStu.Value > 0)
{
room.CheckInStu--;
db.Update(room);
}
}
}
//班级置为已毕业班级
var classInfo = db.FindEntity(x => x.ClassNo == item.ClassNo);
if (classInfo != null && classInfo.ClassStatus != "1")
{
classInfo.ClassStatus = "1";
db.Update(classInfo);
}
//删除学籍表信息
db.Delete(item);
//增加学生毕业表信息
var addSql = $"insert into StuInfoGraduate select * from StuInfoBasic where StuId='{item.StuId}'";
db.ExecuteBySql(addSql);
//db.Insert(GraduateEntity);
}
db.Commit();
adb.Commit();
}
catch (Exception ex)
{
db.Rollback();
adb.Rollback();
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 保存实体数据(新增、修改)
/// 主键
///
///
public void SaveEntity(string keyValue, StuInfoBasicEntity entity)
{
var db = this.BaseRepository("CollegeMIS").BeginTrans();
try
{
UserIBLL userIBLL = new UserBLL();
var loginUser = LoginUserInfo.Get();
if (!string.IsNullOrEmpty(keyValue))
{
entity.Modify(keyValue);
// wx 根据要求去除
#region 编辑加入学籍异动信息
// var oldEntity = this.BaseRepository("CollegeMIS").FindEntity(keyValue);
// List list = new List();
// var tableInfos = this.BaseRepository("CollegeMIS").FindTable(@"SELECT t.[name] AS 表名,c.[name] AS 字段名,cast(ep.[value]
//as varchar(100)) AS [字段说明]
//FROM sys.tables AS t
//INNER JOIN sys.columns
//AS c ON t.object_id = c.object_id
// LEFT JOIN sys.extended_properties AS ep
//ON ep.major_id = c.object_id AND ep.minor_id = c.column_id WHERE ep.class =1
//AND t.name='StuInfoBasic'");
// PropertyInfo[] properties = oldEntity.GetType().GetProperties();
// foreach (System.Reflection.PropertyInfo item in properties)
// {
// string name = item.Name;
// object oldValue = item.GetValue(oldEntity);
// object newValue = item.GetValue(entity);
// if (oldValue == null || newValue == null)
// {
// continue;
// }
// if (!oldValue.Equals(newValue))
// {
// var columnName = "";
// foreach (DataRow rows in tableInfos.Rows)
// {
// if (rows["字段名"].ToString() == item.Name)
// {
// columnName = rows["字段说明"].ToString();
// }
// }
// var changeEntity = new StuInfoBasic_ChangeLogEntity
// {
// StuID = keyValue,
// BeforeChange = oldValue.ToString(),
// AfterChange = newValue.ToString(),
// FieldName = columnName,
// UpdateBy = loginUser.userId,
// UpdateTime = DateTime.Now,
// StuChangeType = "09",
// StuChangeRemark = "点击学籍信息管理-修改按钮进行操作"
// };
// changeEntity.Create();
// list.Add(changeEntity);
// }
// }
// if (list.Count > 0)
// {
// db.Insert(list);
// }
#endregion
var annexesFileEntity = this.BaseRepository().FindEntity(a => a.F_FolderId == entity.Photo);
var url = "";
if (annexesFileEntity != null)
{
url = annexesFileEntity.F_FilePath;
url = "/" + url.Substring(url.IndexOf("Resource"), url.Length - url.IndexOf("Resource"));
}
var baseUser = userIBLL.GetEntityByAccount(entity.StuNo);
if (baseUser != null)
{
baseUser.F_HeadIcon = url;
userIBLL.SaveEntity(baseUser.F_UserId, baseUser);
}
db.Update(entity);
}
else
{
entity.Create();
// wx 根据要求去除
#region 学籍异动日志表
//if (entity.IsTran == "0")//转入/进
//{
// //学籍异动日志表
// var changeEntity = new StuInfoBasic_ChangeLogEntity
// {
// StuID = entity.StuId,
// BeforeChange = null,
// AfterChange = entity.StuId,
// FieldName = "学籍表主键",
// UpdateBy = loginUser.userId,
// UpdateTime = DateTime.Now,
// StuChangeType = "04",
// StuChangeRemark = "点击学籍信息管理-异动转入按钮进行操作"
// };
// changeEntity.Create();
// db.Insert(changeEntity);
//}
#endregion
db.Insert(entity);
}
db.Commit();
}
catch (Exception ex)
{
db.Rollback();
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
#region 缓存定义
private ICache cache = CacheFactory.CaChe();
private string cacheKey = "Learun_adms_excelError_"; // +公司主键
#endregion
///
/// 学生学籍信息修改
///
///
public string StuInfoBasicImport(DataTable dt, string fileId)
{
try
{
int snum = 0;
int fnum = 0;
if (dt.Rows.Count > 0)
{
DataTable failDt = new DataTable();
dt.Columns.Add("导入错误", typeof(string));
foreach (DataColumn dc in dt.Columns)
{
failDt.Columns.Add(dc.ColumnName, dc.DataType);
}
IEnumerable stuInfoBasicEntities = this.BaseRepository("CollegeMIS").FindList("select * from StuInfoBasic");
//修改学生list
List insertedorderlist = new List();
var db = this.BaseRepository("CollegeMIS").BeginTrans();
// 循环遍历导入
foreach (DataRow dr in dt.Rows)
{
try
{
//检测是否有空值
if (dr[0].ToString() == "" || dr[1].ToString() == "" || dr[2].ToString() == "" || dr[3].ToString() == "")
{
throw (new Exception("行内数据有空值,不能为空!"));
}
if (stuInfoBasicEntities.Count(m => m.IdentityCardNo.ToUpper() == dr[0].ToString().ToUpper()) == 0)
{
throw (new Exception("【身份证号】不存在,请核对!"));
}
//写入要导入的数据
StuInfoBasicEntity stuUpdateList = new StuInfoBasicEntity();
stuUpdateList.StuId = stuInfoBasicEntities.FirstOrDefault(s => s.IdentityCardNo.ToUpper() == dr[0].ToString().ToUpper())?.StuId.ToString();
stuUpdateList.StuCode = dr[1].ToString();
stuUpdateList.MailAddress = dr[2].ToString();
stuUpdateList.mobile = dr[3].ToString();
insertedorderlist.Add(stuUpdateList);
snum++;
}
catch (Exception ex)
{
fnum++;
dr["导入错误"] = ex.Message;
failDt.Rows.Add(dr.ItemArray);
}
}
//执行导入
db.Update(insertedorderlist);
db.Commit();
if (failDt.Rows.Count > 0)
{
string errordt = failDt.ToJson();
cache.Write(cacheKey + fileId, errordt, CacheId.excel);
}
}
return snum + "|" + fnum;
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
#endregion
public class TableInfo
{
public string TableName { get; set; }
public string ColumnName { get; set; }
public string ColumnDescription { get; set; }
}
public class StuInfoStatisticsModel
{
///
/// 民族
///
public string NationalityNo { get; set; }
///
/// 性别
///
public string GenderNo { get; set; }
///
/// 专业
///
public string MajorNo { get; set; }
///
/// 生源地(省)
///
public string F_ProvinceId { get; set; }
}
public void GenerateAccout()
{
UserRelationIBLL userRelationIBLL = new UserRelationBLL();
UserIBLL userIBLL = new UserBLL();
try
{
var stuInfoBasicEntities = BaseRepository("CollegeMIS").FindList(m => m.CheckMark != "0");
var alluserlist = userIBLL.GetAllList().Where(m => m.F_Description == "学生");
var roleId = Config.GetValue("GenerateStudentsRoleId");
var defaultpwd = Config.GetValue("defaultpwd");
//读取默认密码配置中已启用的密码
var Sys_DefaultPwdConfigEntity = this.BaseRepository().FindEntity(x => x.IsEnabled == true);
if (Sys_DefaultPwdConfigEntity != null)
{
defaultpwd = Sys_DefaultPwdConfigEntity.Pwd;
}
var studentList = new List();
foreach (var tEntity in stuInfoBasicEntities)
{
if (alluserlist.Count(m => m.F_Account == tEntity.StuNo) > 0)
{
continue;
}
var annexesFileEntity = this.BaseRepository().FindEntity(a => a.F_FolderId == tEntity.Photo);
var url = "";
if (annexesFileEntity != null)
{
url = annexesFileEntity.F_FilePath;
url = "/" + url.Substring(url.IndexOf("Resource"));
}
UserEntity userbase = new UserEntity();
userbase.F_Account = tEntity.StuNo;
userbase.F_RealName = tEntity.StuName;
userbase.F_EnCode = tEntity.StuNo;
userbase.F_Password = Md5Helper.Encrypt(defaultpwd, 32).ToLower();
userbase.F_HeadIcon = string.IsNullOrEmpty(url) ? Config.GetValue("defaultheadimg") : url;
userbase.F_Gender = tEntity.GenderNo.HasValue ? Convert.ToInt32(tEntity.GenderNo.Value) : 1;
userbase.F_DeleteMark = 0;
userbase.F_EnabledMark = 1;
userbase.F_Mobile = tEntity.mobile;
userbase.F_Description = "学生";
userbase.F_CompanyId = tEntity.F_SchoolId;
userbase.F_DepartmentId = tEntity.DeptNo;
userbase.F_IdentityCardNo = tEntity.IdentityCardNo;
userIBLL.SaveEntity(null, userbase);
studentList.Add(userbase);
}
if (studentList.Any())
{
string s = studentList.Select(m => m.F_UserId).Aggregate((current, userEntity) => current + "," + userEntity);
userRelationIBLL.SaveEntityList2(roleId, 1, s);
}
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
public void UpdateAccount()
{
try
{
UserIBLL userIBLL = new UserBLL();
var teacherList = this.BaseRepository("CollegeMIS").FindList();
var baseTeacherList = userIBLL.GetAllList().Where(m => m.F_Description == "学生");
foreach (var baseTeacher in baseTeacherList)
{
var num = 0;
var teacher = teacherList.FirstOrDefault(a => a.StuNo == baseTeacher.F_Account);
if (teacher != null)
{
if (baseTeacher.F_RealName != teacher.StuName)
{
baseTeacher.F_RealName = teacher.StuName;
num++;
}
if (baseTeacher.F_Gender != Convert.ToInt32(teacher.GenderNo))
{
baseTeacher.F_Gender = Convert.ToInt32(teacher.GenderNo);
num++;
}
if (baseTeacher.F_Mobile != teacher.mobile)
{
baseTeacher.F_Mobile = teacher.mobile;
num++;
}
if (baseTeacher.F_CompanyId != teacher.F_SchoolId)
{
baseTeacher.F_CompanyId = teacher.F_SchoolId;
num++;
}
if (baseTeacher.F_DepartmentId != teacher.DeptNo)
{
baseTeacher.F_DepartmentId = teacher.DeptNo;
num++;
}
if (baseTeacher.F_IdentityCardNo != teacher.IdentityCardNo)
{
baseTeacher.F_IdentityCardNo = teacher.IdentityCardNo;
num++;
}
if (num > 0)
{
userIBLL.UpdateEntity(baseTeacher);
}
}
}
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
public void UpdateState(string keyValue, string state)
{
var db = this.BaseRepository().BeginTrans();
try
{
var keyValueArr = keyValue.Split(',');
foreach (var item in keyValueArr)
{
var StuNo = this.BaseRepository("CollegeMIS").FindEntity(item).StuNo;
if (!StuNo.IsEmpty())
{
if (state == "1")
{
db.ExecuteBySql("update LR_Base_User set F_EnabledMark=1 where F_EnCode='" + StuNo + "'");
}
else
{
db.ExecuteBySql("update LR_Base_User set F_EnabledMark=0 where F_EnCode='" + StuNo + "'");
}
}
}
db.Commit();
}
catch (Exception ex)
{
db.Rollback();
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
public IEnumerable GetAllList()
{
try
{
return this.BaseRepository("CollegeMIS").FindList(m => m.CheckMark == "1");
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
public IEnumerable GetAllStatistics()
{
return this.BaseRepository("CollegeMIS").FindList("select F_ProvinceId,NationalityNo,GenderNo,MajorNo FROM StuInfoBasic");
}
///
/// 班级不看学籍异动
///
///
///
public IEnumerable GetAllList(string ChangeType)
{
try
{
StringBuilder sb = new StringBuilder();
sb.Append(@"select * from StuInfoBasic
where stuNo not in (select Stuno from StuInfoBasicChange where StuChangeType in ('02', '05', '06'))");
return this.BaseRepository("CollegeMIS").FindList(sb.ToString());
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
public IEnumerable GetStuInfoByClassNo(string classNo)
{
try
{
return this.BaseRepository("CollegeMIS").FindList(m => m.CheckMark == "1" && m.ClassNo == classNo);
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
}
}