123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208 |
- using MathNet.Numerics.Distributions;
- using NPOI.POIFS.Crypt.Dsig;
- using NPOI.SS.Formula.Functions;
- using OASystem.Domain;
- using OASystem.Domain.Entities.Groups;
- using OASystem.Domain.Entities.System;
- using OASystem.Domain.ViewModels.QiYeWeChat;
- namespace OASystem.Infrastructure.Repositories.System
- {
- public class CompanyRepository : BaseRepository<Sys_Company, CompanyView>
- {
- public CompanyRepository(SqlSugarClient sqlSugar) : base(sqlSugar)
- {
- }
- public async Task<Result> AddCompany(Sys_Company company)
- {
- Result result = new Result() { Code = -2, Msg = "未知错误" };
- try
- {
- BeginTran();
- Sys_Company Company = _sqlSugar.Queryable<Sys_Company>().First(a => a.CompanyName == company.CompanyName && a.IsDel == 0);
- if (Company != null)
- {
- return result = new Result() { Code = -1, Msg = "该公司已存在,请勿重复添加!"};
- }
- else
- {
- int CompanyId = 0;
- int DepartmentId = 0;
- int JobPostId = 0;
- int UsersId = 0;
- CompanyId = await AddAsyncReturnId(company);
- if (CompanyId > 0)
- {
- #region 添加默认部门
- Sys_Department _Department = new Sys_Department();
- _Department.CompanyId = CompanyId;
- _Department.DepName = "默认部门";
- _Department.DepCode = "00";
- _Department.ParentDepId = 0;
- _Department.CreateUserId = company.CreateUserId;
- _Department.Remark = "添加公司时默认生成部门,可修改!";
- _Department.IsDel = 0;
- DepartmentId = await _sqlSugar.Insertable(_Department).ExecuteReturnIdentityAsync();
- #endregion
- if (DepartmentId>0)
- {
- #region 添加默认岗位
- Sys_JobPost _JobPost = new Sys_JobPost();
- _JobPost.CompanyId = CompanyId;
- _JobPost.DepId = DepartmentId;
- _JobPost.JobName = "默认岗位";
- _JobPost.CreateUserId = company.CreateUserId;
- _JobPost.Remark = "添加公司时默认生成岗位,可修改!";
- _JobPost.IsDel = 0;
- JobPostId = await _sqlSugar.Insertable(_JobPost).ExecuteReturnIdentityAsync();
- #endregion
- if (JobPostId>0)
- {
- #region 添加默认管理员
- Sys_Users _Users = new Sys_Users();
- _Users.CnName = "管理员";
- _Users.EnName = "Guan LiYuan";
- _Users.Number = CompanyId.ToString() + DepartmentId.ToString() + JobPostId.ToString()+"01";
- _Users.CompanyId = CompanyId;
- _Users.DepId = DepartmentId;
- _Users.JobPostId = JobPostId;
- _Users.Password = "123456";
- _Users.Sex = 0;
- _Users.HrAudit = 1;
- _Users.CreateUserId = company.CreateUserId;
- _Users.Remark = "添加公司时默认生成管理员,Number可修改!";
- _Users.IsDel = 0;
- UsersId = await _sqlSugar.Insertable(_Users).ExecuteReturnIdentityAsync();
- if (UsersId>0)
- {
- List<int> fid = new List<int>();//功能权限
- List<int> SmId=new List<int>();//页面权限
- List<Sys_UserAuthority> adds = new List<Sys_UserAuthority>();
- List<Sys_PageFunctionPermission> sys_PageFunctionPermissions = _sqlSugar.Queryable<Sys_PageFunctionPermission>().Where(a=>a.IsDel==0).ToList();
-
- foreach (var item in sys_PageFunctionPermissions)
- {
- fid.Add(item.Id);
- }
- List<Sys_SystemMenuPermission> _SystemMenuPermissions = _sqlSugar.Queryable<Sys_SystemMenuPermission>().Where(a => a.IsDel == 0 && (a.Mid==12 || a.Mid==13 || a.Mid==17) &&
- a.WebUrl!="Null" && a.WebUrl!="/" && a.IsEnable==1).ToList();
- foreach(var item in _SystemMenuPermissions)
- {
- SmId.Add(item.Id);
- }
- for (int i = 0;i< SmId.Count; i++)
- {
- for (int j = 0; j < fid.Count; j++)
- {
- adds.Add(new Sys_UserAuthority
- {
- CreateTime = DateTime.Now,
- CreateUserId = company.CreateUserId,
- FId = fid[j],
- UId = UsersId,
- SmId = SmId[i],
- IsTemp = 0
- });
- }
- }
- _sqlSugar.Insertable<Sys_UserAuthority>(adds).ExecuteCommand();
- }
- else
- {
- RollbackTran();
- result = new Result() { Code = 0, Msg = "默认管理员添加失败!" };
- }
- #endregion
- }
- else
- {
- RollbackTran();
- result = new Result() { Code = 0, Msg = "默认岗位添加失败!" };
- }
- }
- else
- {
- RollbackTran();
- result = new Result() { Code = 0, Msg = "默认部门添加失败!" };
- }
- CommitTran();
- var data = new
- {
- Number = CompanyId.ToString() + DepartmentId.ToString() + JobPostId.ToString() + "01",
- Password = "123456",
- };
- result = new Result() { Code = 0, Msg = "添加成功!可通过Number和密码登录进去管理!初始密码为:123456", };
- }
- else
- {
- result = new Result() { Code = -1, Msg = "添加失败!请稍后重试!" };
- }
- }
- }
- catch (Exception ex)
- {
- return result = new Result() { Code = -2, Msg = "未知错误" };
- }
- return result;
- }
-
- /// <summary>
- /// 获取所有公司数据
- /// </summary>
- /// <param name="_CompanyRepository"></param>
- /// <returns></returns>
- public Result GetCompanyData()
- {
- Result result = new Result();
- string sql = "select * from Sys_Company where isdel = 0";
- var DBdata = GetListBySqlWithNolock(sql);
- if (DBdata == null || DBdata.Count == 0)
- {
- result.Code = -1;
- result.Msg = "暂无数据!";
- return result;
- }
- result.Code = 0;
- result.Msg = "成功!";
- result.Data = DBdata;
- return result;
- }
- /// <summary>
- /// 获取公司名称数据
- /// </summary>
- /// <param name="_CompanyRepository"></param>
- /// <returns></returns>
- public async Task<Result> GetCompanyNameData()
- {
- Result result = new Result();
- string sql = "Select Id,CompanyName From Sys_Company Where IsDel = 0";
- var companyNameData = await _sqlSugar.SqlQueryable<CompanyNameView>(sql).ToListAsync();
- if (companyNameData == null || companyNameData.Count == 0)
- {
- result.Code = -1;
- result.Msg = "暂无数据!";
- return result;
- }
- result.Code = 0;
- result.Msg = "成功!";
- result.Data = companyNameData;
- return result;
- }
- }
- }
|