...
This commit is contained in:
@@ -1,8 +1,10 @@
|
||||
using Common.Dtos.Exper;
|
||||
using Common.Dtos;
|
||||
using Common.Dtos.Exper;
|
||||
using Hushian.Application.Contracts.Persistence;
|
||||
using Hushian.Application.Models;
|
||||
using Hushian.Application.Validation;
|
||||
using Hushian.Domain.Entites;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
@@ -15,16 +17,17 @@ namespace Hushian.Application.Services
|
||||
{
|
||||
private readonly IGenericRepository<Company> _CompanyRepository;
|
||||
private readonly IGenericRepository<Exper> _ExperRepository;
|
||||
public async Task<ResponseBase<bool>> ADDExper(ADD_ExperDto dto,int CompanyID)
|
||||
private readonly VerificationService _VerificationService;
|
||||
public async Task<ResponseBase<bool>> ADDExper(ADD_ExperDto dto, int CompanyID)
|
||||
{
|
||||
var Response =new ResponseBase<bool>();
|
||||
var Response = new ResponseBase<bool>();
|
||||
|
||||
#region Validation
|
||||
bool validate = true;
|
||||
var errors = new List<string>();
|
||||
|
||||
validate = dto.Password.CheckLawPassword(ref errors);
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
if (validate)
|
||||
@@ -53,5 +56,63 @@ namespace Hushian.Application.Services
|
||||
|
||||
return Response;
|
||||
}
|
||||
//Get Info
|
||||
// Update
|
||||
public async Task<ResponseBase<bool>> ChangePasswordExperFromExper(ChangePasswordDto model, int ExperID)
|
||||
{
|
||||
ResponseBase<bool> Response = new();
|
||||
|
||||
var exper = await _ExperRepository.Get().FirstOrDefaultAsync(f => f.ID == ExperID);
|
||||
if (string.IsNullOrEmpty(model.OldPassWord) || model.OldPassWord.GetHash() != exper.Password)
|
||||
{
|
||||
Response.Errors.Add("کلمه عبور فعلی صحیح نمی باشد");
|
||||
}
|
||||
else
|
||||
{
|
||||
exper.Password = model.NewPassWord.GetHash();
|
||||
Response.Value = await _ExperRepository.UPDATEBool(exper);
|
||||
if (!Response.Value) Response.Errors.Add("خطا در ذخیره سازی");
|
||||
else Response.Success = true;
|
||||
|
||||
}
|
||||
return Response;
|
||||
}
|
||||
public async Task<ResponseBase<bool>> ChangePasswordExperFromCompanyManaget(ChangePasswordDto model, int ExperID, int CompanyID)
|
||||
{
|
||||
ResponseBase<bool> Response = new();
|
||||
var exper = await _ExperRepository.Get().FirstOrDefaultAsync(f => f.ID == ExperID);
|
||||
|
||||
if (exper.CompanyID == CompanyID)
|
||||
{
|
||||
exper.Password = model.NewPassWord.GetHash();
|
||||
Response.Value = await _ExperRepository.UPDATEBool(exper);
|
||||
if (!Response.Value) Response.Errors.Add("خطا در ذخیره سازی");
|
||||
else Response.Success = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
Response.Errors.Add("کاربری یافت نشد");
|
||||
}
|
||||
|
||||
|
||||
|
||||
return Response;
|
||||
}
|
||||
public async Task<ResponseBase<int>> ForgetPasswordExper(string UserName)
|
||||
{
|
||||
ResponseBase<int> Response = new();
|
||||
|
||||
var company = await _ExperRepository.Get().FirstOrDefaultAsync(f => f.UserName == UserName);
|
||||
if (company == null)
|
||||
{
|
||||
Response.Errors.Add("کاربری یافت نشد");
|
||||
}
|
||||
else
|
||||
{
|
||||
Response.Value = await _VerificationService.GenerateCodeByForgetPassword(UserName);
|
||||
Response.Success = true;
|
||||
}
|
||||
return Response;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user