|
- using Dapper;
- using Learun.DataBase.Repository;
- using Learun.Util;
- using System;
- using System.Collections.Generic;
- using System.Configuration;
- using System.Data;
- using System.Linq;
- using System.Text;
- using Learun.Application.Base.AuthorizeModule;
- using Learun.Application.Base.SystemModule;
- using Learun.Application.Organization;
- using Learun.Application.TwoDevelopment.PersonnelManagement;
-
- namespace Learun.Application.TwoDevelopment.EducationalAdministration
- {
- /// <summary>
- /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
- /// Copyright (c) 2013-2018 北京泉江科技有限公司
- /// 创 建:超级管理员
- /// 日 期:2019-01-29 17:31
- /// 描 述:教师信息管理
- /// </summary>
- public class EmpInfoService : RepositoryFactory
- {
- private object Select;
-
- #region 获取数据
-
- /// <summary>
- /// 获取页面显示列表数据
- /// <summary>
- /// <param name="queryJson">查询参数</param>
- /// <returns></returns>
- public IEnumerable<EmpInfoEntity> GetPageList(Pagination pagination, string queryJson)
- {
- try
- {
- var strSql = new StringBuilder();
- strSql.Append("SELECT t.*,b.F_Order as DeptOrder ");
- strSql.Append(" FROM EmpInfo t left join " + BaseRepository().getDbConnection().Database + ".dbo.LR_Base_Department b on t.F_DepartmentId=b.F_DepartmentId ");
- strSql.Append(" WHERE 1=1 ");
- var queryParam = queryJson.ToJObject();
- // 虚拟参数
- var dp = new DynamicParameters(new { });
- if (!queryParam["EmpNo"].IsEmpty())
- {
- dp.Add("EmpNo", queryParam["EmpNo"].ToString(), DbType.String);
- strSql.Append(" AND t.EmpNo = @EmpNo ");
- }
- if (!queryParam["EmpName"].IsEmpty())
- {
- dp.Add("EmpName", "%" + queryParam["EmpName"].ToString() + "%", DbType.String);
- strSql.Append(" AND t.EmpName Like @EmpName ");
- }
- if (!queryParam["mobile"].IsEmpty())
- {
- dp.Add("mobile", "%" + queryParam["mobile"].ToString() + "%", DbType.String);
- strSql.Append(" AND t.mobile Like @mobile ");
- }
- if (!queryParam["DeptNo"].IsEmpty())
- {
- dp.Add("DeptNo", queryParam["DeptNo"].ToString(), DbType.String);
- strSql.Append(" AND t.DeptNo = @DeptNo ");
- }
- if (!queryParam["ProvinceNo"].IsEmpty())
- {
- dp.Add("ProvinceNo", queryParam["ProvinceNo"].ToString(), DbType.String);
- strSql.Append(" AND t.ProvinceNo = @ProvinceNo ");
- }
- if (!queryParam["RegionNo"].IsEmpty())
- {
- dp.Add("RegionNo", queryParam["RegionNo"].ToString(), DbType.String);
- strSql.Append(" AND t.RegionNo = @RegionNo ");
- }
- if (!queryParam["F_CompanyId"].IsEmpty())
- {
- dp.Add("F_CompanyId", queryParam["F_CompanyId"].ToString(), DbType.String);
- strSql.Append(" AND t.F_CompanyId = @F_CompanyId ");
- }
- if (!queryParam["F_DepartmentId"].IsEmpty())
- {
- dp.Add("F_DepartmentId", queryParam["F_DepartmentId"].ToString(), DbType.String);
- strSql.Append(" AND t.F_DepartmentId = @F_DepartmentId ");
- }
- if (!queryParam["BCdCultureDegree"].IsEmpty())
- {
- dp.Add("BCdCultureDegree", queryParam["BCdCultureDegree"].ToString(), DbType.String);
- strSql.Append(" AND t.BCdCultureDegree = @BCdCultureDegree ");
- }
- if (!queryParam["BCdPartyFace"].IsEmpty())
- {
- dp.Add("BCdPartyFace", queryParam["BCdPartyFace"].ToString(), DbType.String);
- strSql.Append(" AND t.BCdPartyFace = @BCdPartyFace ");
- }
- if (!queryParam["NationalityNo"].IsEmpty())//民族
- {
- dp.Add("NationalityNo", queryParam["NationalityNo"].ToString(), DbType.String);
- strSql.Append(" AND t.NationalityNo = @NationalityNo ");
- }
- if (!queryParam["PartyFaceNo"].IsEmpty())//政治面貌
- {
- dp.Add("PartyFaceNo", queryParam["PartyFaceNo"].ToString(), DbType.String);
- strSql.Append(" AND t.PartyFaceNo = @PartyFaceNo ");
- }
- if (!queryParam["GenderNo"].IsEmpty())//性别
- {
- dp.Add("GenderNo", queryParam["GenderNo"].ToString(), DbType.String);
- strSql.Append(" AND t.GenderNo = @GenderNo ");
- }
- if (!queryParam["DegreeNo"].IsEmpty())//学位
- {
- dp.Add("DegreeNo", queryParam["DegreeNo"].ToString(), DbType.String);
- strSql.Append(" AND t.DegreeNo = @DegreeNo ");
- }
- if (!queryParam["ProfessionalTitle"].IsEmpty())//职称
- {
- dp.Add("ProfessionalTitle", queryParam["ProfessionalTitle"].ToString(), DbType.String);
- strSql.Append(" AND t.ProfessionalTitle = @ProfessionalTitle ");
- }
- if (!queryParam["HighestRecord"].IsEmpty())//最高学历
- {
- dp.Add("HighestRecord", queryParam["HighestRecord"].ToString(), DbType.String);
- strSql.Append(" AND t.HighestRecord = @HighestRecord ");
- }
- if (!queryParam["CompilationCategory"].IsEmpty())//人员身份
- {
- dp.Add("CompilationCategory", queryParam["CompilationCategory"].ToString(), DbType.String);
- strSql.Append(" AND t.CompilationCategory = @CompilationCategory ");
- }
- if (!queryParam["CheckMark"].IsEmpty())//是否审核
- {
- dp.Add("CheckMark", queryParam["CheckMark"].ToString(), DbType.String);
- strSql.Append(" AND t.CheckMark = @CheckMark ");
- }
- if (!queryParam["IsInActiveStatus"].IsEmpty())//员工状态
- {
- dp.Add("IsInActiveStatus", queryParam["IsInActiveStatus"].ToString(), DbType.String);
- strSql.Append(" AND t.IsInActiveStatus = @IsInActiveStatus ");
- }
- var result = new List<EmpInfoEntity>();
- result = this.BaseRepository("CollegeMIS").FindList<EmpInfoEntity>(strSql.ToString(), dp, pagination).ToList();
- foreach (var item in result)
- {
- var certificate = this.BaseRepository().FindList<TeacherCertificateEntity>(x => x.TCName == item.EmpId);
- if (certificate.Any())
- {
- item.CertificateNames = string.Join(",", certificate.Select(x => x.TCType).ToArray());
- item.CertificateDates = string.Join(",", certificate.Select(x => x.TCTime).ToArray());
- }
- }
- return result;
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- internal bool GetAny()
- {
- try
- {
- return this.BaseRepository("CollegeMIS").FindList<EmpInfoEntity>().ToList().Count() > 0 ? true : false; ;
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- public IEnumerable<EmpInfoEntity> GetAllList()
- {
- try
- {
- var dept = this.BaseRepository().FindList<DepartmentEntity>();
- var list= this.BaseRepository("CollegeMIS").FindList<EmpInfoEntity>();
- foreach (var item in list)
- {
- item.DepartmentName = dept.FirstOrDefault(x=>x.F_DepartmentId==item.F_DepartmentId)?.F_FullName;
- item.DepartmentNo = dept.FirstOrDefault(x => x.F_DepartmentId == item.F_DepartmentId)?.F_EnCode; ;
- }
- return list;
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- /// <summary>
- /// 获取页面显示列表数据
- /// <summary>
- /// <param name="queryJson">查询参数</param>
- /// <returns></returns>
- public IEnumerable<EmpInfoEntity> GetList(string queryJson)
- {
- try
- {
- var strSql = new StringBuilder();
- strSql.Append("SELECT ");
- strSql.Append(@"
- t.EmpId,
- t.EmpNo,
- t.EmpName,
- t.F_CompanyId,
- t.F_DepartmentId,
- t.DeptNo,
- t.GenderNo,
- t.Photo,
- t.Birthday,
- t.NationalityNo,
- t.PartyFaceNo,
- t.IdentityCardNo,
- t.CultureDegreeNo,
- t.DegreeNo,
- t.mobile,
- t.EMail
- ");
- strSql.Append(" FROM EmpInfo t ");
- strSql.Append(" WHERE 1=1 ");
- var queryParam = queryJson.ToJObject();
- // 虚拟参数
- var dp = new DynamicParameters(new { });
- return this.BaseRepository("CollegeMIS").FindList<EmpInfoEntity>(strSql.ToString(), dp);
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- /// <summary>
- /// 获取EmpInfo表实体数据
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- public EmpInfoEntity GetEmpInfoEntity(string keyValue)
- {
- try
- {
- return this.BaseRepository("CollegeMIS").FindEntity<EmpInfoEntity>(keyValue);
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- public EmpInfoEntity GetEmpInfoEntityByNo(string keyValue)
- {
- try
- {
- return this.BaseRepository("CollegeMIS").FindEntity<EmpInfoEntity>(m => m.EmpNo == keyValue);
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
- public List<EmpInfoEntity> GetEmpInfoEntityByDepartment(string keyValue)
- {
- try
- {
- return this.BaseRepository("CollegeMIS").FindList<EmpInfoEntity>(m => m.F_DepartmentId == keyValue).ToList();
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- public EmpInfoEntity GetEmpInfoEntityById(string keyValue)
- {
- try
- {
- return this.BaseRepository("CollegeMIS").FindEntity<EmpInfoEntity>(m => m.EmpId == keyValue);
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- public IEnumerable<EmpInfoEntity> GetEmpInfoEntitiesByName(string name)
- {
- try
- {
- return this.BaseRepository("CollegeMIS").FindList<EmpInfoEntity>(x => x.EmpName == name);
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- public EmpInfoEntity GetEmpInfoEntityByIdCard(string idcard)
- {
- try
- {
- return this.BaseRepository("CollegeMIS").FindEntity<EmpInfoEntity>(m => m.IdentityCardNo == idcard);
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- /// <summary>
- /// 教师年龄比例
- /// </summary>
- /// <returns></returns>
- public EmpInfoEntity GetEmpInfoAgeRate()
- {
- try
- {
- var strSql = new StringBuilder();
- strSql.Append(@"select
- sum(case when DATEDIFF(YYYY, t.Birthday, GETDATE()) > 60 then 1 else 0 end) as age1,
- sum(case when DATEDIFF(YYYY, t.Birthday, GETDATE()) > 50 and DATEDIFF(YYYY, t.Birthday, GETDATE()) <= 60 then 1 else 0 end) as age2,
- sum(case when DATEDIFF(YYYY, t.Birthday, GETDATE()) > 40 and DATEDIFF(YYYY, t.Birthday, GETDATE()) <= 50 then 1 else 0 end) as age3,
- sum(case when DATEDIFF(YYYY, t.Birthday, GETDATE()) > 30 and DATEDIFF(YYYY, t.Birthday, GETDATE()) <= 40 then 1 else 0 end) as age4,
- sum(case when DATEDIFF(YYYY, t.Birthday, GETDATE()) > 20 and DATEDIFF(YYYY, t.Birthday, GETDATE()) <= 30 then 1 else 0 end) as age5
- from empinfo t where t.Birthday is not null");
- return this.BaseRepository("CollegeMIS").FindEntity<EmpInfoEntity>(strSql.ToString(), null);
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
- #endregion
-
- #region 提交数据
-
- /// <summary>
- /// 生成教师帐号
- /// </summary>
- public void GenerateAccout(string empId = null)
- {
- try
- {
- var teacherList = new List<EmpInfoEntity>();
- if (empId != null)
- {
- var listIds = empId.Split(',');
- teacherList = this.BaseRepository("CollegeMIS")
- .FindList<EmpInfoEntity>(a => listIds.Contains(a.EmpId) && a.CheckMark == true).ToList();
- }
- else
- {
- teacherList = this.BaseRepository("CollegeMIS").FindList<EmpInfoEntity>(a => a.CheckMark == true).ToList();
- }
- UserRelationIBLL userRelationIBLL = new UserRelationBLL();
- UserIBLL userIBLL = new UserBLL();
- var alluserlist = userIBLL.GetAllList().Where(m => m.F_Description == "教师");
- var roleId = Config.GetValue("GenerateTeachersRoleId");
- var defaultpwd = Config.GetValue("defaultpwd");
- //读取默认密码配置中已启用的密码
- var Sys_DefaultPwdConfigEntity = this.BaseRepository().FindEntity<Sys_DefaultPwdConfigEntity>(x => x.IsEnabled == true);
- if (Sys_DefaultPwdConfigEntity != null)
- {
- defaultpwd = Sys_DefaultPwdConfigEntity.Pwd;
- }
- var studentList = new List<UserEntity>();
- foreach (var tEntity in teacherList)
- {
- if (alluserlist.Count(m => m.F_Account == tEntity.EmpNo) > 0)
- {
- continue;
- }
- var annexesFileEntity = this.BaseRepository().FindEntity<AnnexesFileEntity>(a => a.F_FolderId == tEntity.Photo);
- var url = "";
- if (annexesFileEntity != null)
- {
- url = annexesFileEntity.F_FilePath;
- url = "/Resource/" + url.Substring(url.IndexOf(annexesFileEntity.F_CreateUserId), url.Length - url.IndexOf(annexesFileEntity.F_CreateUserId));
-
- }
- UserEntity userbase = new UserEntity();
- userbase.F_Account = tEntity.EmpNo;
- userbase.F_RealName = tEntity.EmpName;
- userbase.F_EnCode = tEntity.EmpNo;
- 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_CompanyId;
- userbase.F_DepartmentId = tEntity.F_DepartmentId;
- userbase.F_IdentityCardNo = tEntity.IdentityCardNo;
- userbase.F_Order = tEntity.F_Order;
- 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(string empId = null)
- {
- try
- {
- UserIBLL userIBLL = new UserBLL();
- var teacherList = new List<EmpInfoEntity>();
- if (empId != null)
- {
- var listIds = empId.Split(',');
- teacherList = this.BaseRepository("CollegeMIS")
- .FindList<EmpInfoEntity>(a => listIds.Contains(a.EmpId)).ToList();
- }
- else
- {
- teacherList = this.BaseRepository("CollegeMIS").FindList<EmpInfoEntity>().ToList();
- }
- var baseTeacherList = userIBLL.GetAllList().Where(m => m.F_Description == "教师");
- foreach (var baseTeacher in baseTeacherList)
- {
- var num = 0;
- var teacher = teacherList.FirstOrDefault(a => a.EmpNo == baseTeacher.F_Account);
- if (teacher != null)
- {
- 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_CompanyId)
- {
- baseTeacher.F_CompanyId = teacher.F_CompanyId;
- num++;
- }
- if (baseTeacher.F_DepartmentId != teacher.F_DepartmentId)
- {
- baseTeacher.F_DepartmentId = teacher.F_DepartmentId;
- num++;
- }
- if (baseTeacher.F_RealName != teacher.EmpName)
- {
- baseTeacher.F_RealName = teacher.EmpName;
- 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 Lock(string keyValue)
- {
- var db = this.BaseRepository("CollegeMIS").BeginTrans();
- try
- {
- //单个启用
- //this.BaseRepository("CollegeMIS").ExecuteBySql("update EmpInfo set CheckMark=1 where EmpId='" + keyValue + "'");
-
- //多个启用
- var keyValueArr = keyValue.Split(',');
- foreach (var item in keyValueArr)
- {
- db.ExecuteBySql("update EmpInfo set CheckMark=1 where EmpId='" + item + "'");
- }
- db.Commit();
- }
- catch (Exception ex)
- {
- db.Rollback();
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- public void UnLock(string keyValue)
- {
- var db = this.BaseRepository("CollegeMIS").BeginTrans();
- try
- {
- //单个停用
- //this.BaseRepository("CollegeMIS").ExecuteBySql("update EmpInfo set CheckMark=0 where EmpId='" + keyValue + "'");
-
- //多个停用
- var keyValueArr = keyValue.Split(',');
- foreach (var item in keyValueArr)
- {
- db.ExecuteBySql("update EmpInfo set CheckMark=0 where EmpId='" + item + "'");
- }
- db.Commit();
- }
- catch (Exception ex)
- {
- db.Rollback();
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
- /// <summary>
- /// 审核全部
- /// </summary>
- public void CheckAll()
- {
- try
- {
- this.BaseRepository("CollegeMIS").ExecuteBySql("update EmpInfo set CheckMark=1 ");
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
- /// <summary>
- /// 删除实体数据
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- public void DeleteEntity(string keyValue)
- {
- try
- {
- //单个删除
- //this.BaseRepository("CollegeMIS").Delete<EmpInfoEntity>(t => t.EmpId == keyValue);
-
- //多个删除
- var keyValueArr = keyValue.Split(',');
- foreach (var item in keyValueArr)
- {
- var empinfo = this.BaseRepository("CollegeMIS").FindEntity<EmpInfoEntity>(t => t.EmpId == item);
- var userinfo = BaseRepository().FindEntity<UserEntity>(m => m.F_Account == empinfo.EmpNo);
- if (userinfo != null)
- {
- BaseRepository().Delete<UserRelationEntity>(m => m.F_UserId == userinfo.F_UserId);
- BaseRepository().Delete<UserEntity>(userinfo);
- }
- this.BaseRepository("CollegeMIS").Delete<EmpInfoEntity>(empinfo);
- }
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- /// <summary>
- /// 保存实体数据(新增、修改)
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- public void SaveEntity(string keyValue, EmpInfoEntity entity)
- {
- try
- {
-
-
- UserIBLL userIBLL = new UserBLL();
- if (!string.IsNullOrEmpty(keyValue))
- {
- entity.Modify(keyValue);
- this.BaseRepository("CollegeMIS").Update(entity);
-
- var annexesFileEntity = this.BaseRepository().FindEntity<AnnexesFileEntity>(a => a.F_FolderId == entity.Photo);
- var url = "";
- if (annexesFileEntity != null)
- {
- url = annexesFileEntity.F_FilePath;
- url = "/" + url.Substring(url.IndexOf("Resource"));
-
- }
- var baseUser = userIBLL.GetEntityByAccount(entity.EmpNo);
- if (baseUser != null)
- {
- baseUser.F_HeadIcon = url;
- baseUser.F_RealName = entity.EmpName;
- baseUser.F_IdentityCardNo = entity.IdentityCardNo;
- baseUser.F_Mobile = entity.mobile;
- userIBLL.SaveEntity(baseUser.F_UserId, baseUser);
- }
- }
- else
- {
- if (string.IsNullOrEmpty(entity.EmpId))
- {
- //生成编号
- var ruleName = ConfigurationManager.AppSettings["EmpNoRule"];//
- if (ruleName == "jy")
- {
- var strHead = DateTime.Now.ToString("yyyyMM");
- var SerialNum = 1;
- var empInfoEntities = this.BaseRepository("CollegeMIS").FindList<EmpInfoEntity>(a => a.EmpNo.Contains(strHead));
- if (empInfoEntities.Count() > 0)
- {
- var aa = empInfoEntities.Where(a => a.EmpNo.Length >= 8);
- var bb = aa.Select(a => a.EmpNo.Substring(a.EmpNo.Length - 2, 2));
- var cc = bb.Select(a => int.Parse(a));
- SerialNum = cc.Max() + 1;
- }
- entity.EmpNo = strHead + SerialNum.ToString().PadLeft(2, '0');
-
-
- }
- entity.Create();
- }
- this.BaseRepository("CollegeMIS").Insert(entity);
- }
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- public void UpdatePhoto(string id, string photo)
- {
- BaseRepository("CollegeMIS").ExecuteBySql("update EmpInfo set Photo='" + photo + "' where EmpId='" + id + "'");
- }
-
-
- /// <summary>
- /// 保存实体数据(新增、修改)
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- public void SaveEntity(UserInfo userInfo, string keyValue, EmpInfoEntity entity)
- {
- try
- {
- if (!string.IsNullOrEmpty(keyValue))
- {
- entity.Modify(keyValue, userInfo);
- this.BaseRepository("CollegeMIS").Update(entity);
- }
- else
- {
- entity.Create(userInfo);
- this.BaseRepository("CollegeMIS").Insert(entity);
- }
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- /// <summary>
- /// 保存部门、系部
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- public void SaveEditEntity(string keyValue, EmpInfoEntity entity)
- {
- var db = this.BaseRepository("CollegeMIS").BeginTrans();
- try
- {
- if (!string.IsNullOrEmpty(keyValue))
- {
- if (keyValue.IndexOf(',') == -1)
- {
- var model = db.FindEntity<EmpInfoEntity>(keyValue);
- if (model != null)
- {
- if (!string.IsNullOrEmpty(entity.F_CompanyId))
- {
- model.F_CompanyId = entity.F_CompanyId;
- }
- if (!string.IsNullOrEmpty(entity.F_DepartmentId))
- {
- model.F_DepartmentId = entity.F_DepartmentId;
- }
- if (!string.IsNullOrEmpty(entity.DeptNo))
- {
- model.DeptNo = entity.DeptNo;
- }
- db.Update(model);
- }
- }
- else
- {
- foreach (var item in keyValue.Split(','))
- {
- var model = db.FindEntity<EmpInfoEntity>(item);
- if (model != null)
- {
- if (!string.IsNullOrEmpty(entity.F_CompanyId))
- {
- model.F_CompanyId = entity.F_CompanyId;
- }
- if (!string.IsNullOrEmpty(entity.F_DepartmentId))
- {
- model.F_DepartmentId = entity.F_DepartmentId;
- }
- if (!string.IsNullOrEmpty(entity.DeptNo))
- {
- model.DeptNo = entity.DeptNo;
- }
- db.Update(model);
- }
- }
- }
- }
- db.Commit();
- }
- catch (Exception ex)
- {
- db.Rollback();
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- /// <summary>
- /// 修改二维码状态
- /// </summary>
- /// <param name="keyValue"></param>
- /// <param name="QRCodeStatus"></param>
- public void UpdateQRCodeStatus(string keyValue, int QRCodeStatus)
- {
- try
- {
- if (keyValue.Contains(","))
- {
- keyValue = string.Join("','", keyValue.Split(','));
- }
- this.BaseRepository("CollegeMIS").ExecuteBySql($"update EmpInfo set QRCodeStatus='{QRCodeStatus}' where EmpId in ('{keyValue}')");
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
- #endregion
-
- }
- }
|