|
@@ -13,7 +13,8 @@ namespace OASystem.Infrastructure.Repositories.Login
|
|
|
{
|
|
|
public class LoginRepository : BaseRepository<Sys_Users, LoginView>
|
|
|
{
|
|
|
- public LoginRepository(SqlSugarClient sqlSugar) :
|
|
|
+
|
|
|
+ public LoginRepository(SqlSugarClient sqlSugar, UsersRepository usersRep) :
|
|
|
base(sqlSugar){}
|
|
|
|
|
|
/// <summary>
|
|
@@ -101,12 +102,15 @@ namespace OASystem.Infrastructure.Repositories.Login
|
|
|
string IdCrad = registerDto.IdCrad;
|
|
|
string birthDay = IdCrad.Substring(6, 4) + "-" + IdCrad.Substring(10, 2) + "-" + IdCrad.Substring(12, 2);
|
|
|
|
|
|
+ string number = await CreateNumber(registerDto.DepId);
|
|
|
+
|
|
|
Sys_Users _userInfo = new Sys_Users()
|
|
|
{
|
|
|
CnName = registerDto.CnName,
|
|
|
EnName = registerDto.EnName,
|
|
|
Sex = registerDto.Sex,
|
|
|
- Number = "", //员工编号 人事审核通过了 由信息部经理分配
|
|
|
+ Number = number, //员工编号 人事审核通过了 由信息部经理分配
|
|
|
+ Password = registerDto.Password, //密码由用户自己设置
|
|
|
CompanyId = registerDto.CompanyId,
|
|
|
DepId = registerDto.DepId,
|
|
|
JobPostId = registerDto.JobPostId,
|
|
@@ -126,6 +130,7 @@ namespace OASystem.Infrastructure.Repositories.Login
|
|
|
Education = registerDto.Education, //学历类型
|
|
|
TheOrAdultEducation = registerDto.EducationType, //教育类型
|
|
|
MaritalStatus = registerDto.MaritalStatus, // 未婚/已婚
|
|
|
+ WorkExperience = registerDto.WorkExperience, // 工作经历
|
|
|
HomeAddress = registerDto.HomeAddress, //身份证上 家庭住址
|
|
|
UsePeriod = "", //试用期 由该人员入职部门主管手动操作
|
|
|
Certificate = "", //证件上传地址 多个证件由 | 隔开
|
|
@@ -152,9 +157,39 @@ namespace OASystem.Infrastructure.Repositories.Login
|
|
|
|
|
|
|
|
|
result.Code = 0;
|
|
|
- result.Msg = "申请成功!人事主管审核后且信息部经理分配了登录账号,可登录OA!";
|
|
|
+ result.Msg = string.Format("账号:{0}\r\n密码:{1}\r\n申请成功!\r\n人事主管审核后,即可登录OA!", number, registerDto.Password);
|
|
|
return result;
|
|
|
}
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 生成 Number
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="depId"></param>
|
|
|
+ /// <returns></returns>
|
|
|
+ public async Task<string> CreateNumber(int depId) {
|
|
|
+ string number = string.Empty;
|
|
|
+
|
|
|
+ string userSql = string.Format("Select * From Sys_Users Where IsDel= 0 And DepId = {0} And Number != '' Order By Id Desc", depId);
|
|
|
+ var userData = await _sqlSugar.SqlQueryable<Sys_Users>(userSql).ToListAsync();
|
|
|
+ if (userData.Count <= 0) return number;
|
|
|
|
|
|
+ string depSql = string.Format("Select * From Sys_Department Where IsDel= 0 And Id = {0} ", depId);
|
|
|
+ var depData = await _sqlSugar.SqlQueryable<Sys_Department>(depSql).FirstAsync();
|
|
|
+ if (depData == null) return number;
|
|
|
+
|
|
|
+ string numPrefix = depData.Remark;
|
|
|
+ if (string.IsNullOrEmpty(numPrefix)) return number;
|
|
|
+
|
|
|
+ int numSuffix = 1;
|
|
|
+ while (true)
|
|
|
+ {
|
|
|
+ number = numPrefix + numSuffix.ToString();
|
|
|
+ var userData1 = userData.Where(it => it.Number == number).FirstOrDefault();
|
|
|
+ if (userData1 == null) break;
|
|
|
+ numSuffix++;
|
|
|
+ }
|
|
|
+
|
|
|
+ return number;
|
|
|
+ }
|
|
|
}
|
|
|
}
|