94 lines
2.9 KiB
C#
94 lines
2.9 KiB
C#
using System.Collections.Generic;
|
|
using System.Threading.Tasks;
|
|
using _0_Framework.Application;
|
|
using Company.Domain.JobAgg;
|
|
using CompanyManagment.App.Contracts.Job;
|
|
|
|
namespace CompanyManagment.Application;
|
|
|
|
public class JobApplication : IJobApplication
|
|
{
|
|
private readonly IJobRepository _jobRepository;
|
|
|
|
public JobApplication(IJobRepository jobRepository)
|
|
{
|
|
_jobRepository = jobRepository;
|
|
}
|
|
|
|
public OperationResult Create(CreateJob command)
|
|
{
|
|
var operation = new OperationResult();
|
|
if (_jobRepository.Exists(x =>
|
|
x.JobName == command.JobName || x.JobCode == command.JobCode))
|
|
return operation.Failed("امکان ثبت رکورد تکراری وجود ندارد");
|
|
|
|
var job = new Job(command.JobName, command.JobCode);
|
|
_jobRepository.Create(job);
|
|
_jobRepository.SaveChanges();
|
|
|
|
return operation.Succcedded();
|
|
}
|
|
|
|
public OperationResult Edit(EditJob command)
|
|
{
|
|
var operation = new OperationResult();
|
|
var jobEdit = _jobRepository.Get(command.Id);
|
|
if (jobEdit == null)
|
|
operation.Failed("رکورد مورد نظر وجود ندارد");
|
|
|
|
if (_jobRepository.Exists(x => x.JobName == command.JobName && x.id != command.Id))
|
|
return operation.Failed(" شغل وارد شده تکراری است");
|
|
if (_jobRepository.Exists(x => x.JobCode == command.JobCode && x.id != command.Id))
|
|
return operation.Failed(" کد شغل وارد شده تکراری است");
|
|
jobEdit.Edit(command.JobName,command.JobCode);
|
|
_jobRepository.SaveChanges();
|
|
|
|
|
|
return operation.Succcedded();
|
|
}
|
|
|
|
public EditJob GetDetails(long id)
|
|
{
|
|
return _jobRepository.GetDetails(id);
|
|
}
|
|
|
|
public List<JobViewModel> GetJob()
|
|
{
|
|
return _jobRepository.GetJob();
|
|
}
|
|
|
|
public List<JobViewModel> Search(JobSearchModel searchModel)
|
|
{
|
|
return _jobRepository.Search(searchModel);
|
|
}
|
|
|
|
public List<JobViewModel> SearchJobForMain(JobSearchModel searchModel)
|
|
{
|
|
return _jobRepository.SearchJobForMain(searchModel);
|
|
}
|
|
|
|
public async Task<List<JobViewModel>> JobSearchSelect(string searchtText)
|
|
{
|
|
return await _jobRepository.JobSearchSelect(searchtText);
|
|
}
|
|
|
|
//public Task<List<JobViewModel>> GetJobListByText(string searchtText)
|
|
//{
|
|
// return _jobRepository.GetJobListByText(searchtText);
|
|
//}
|
|
public List<JobViewModel> GetJobListByText(string searchtText)
|
|
{
|
|
return _jobRepository.GetJobListByText(searchtText);
|
|
}
|
|
|
|
public List<JobViewModel> GetJobListByWorkshopId(long workshopId)
|
|
{
|
|
return _jobRepository.GetJobListByWorkshopId(workshopId);
|
|
}
|
|
public List<JobViewModel> GetJobListByTextAndWorkshopId(string textSearch, long workshopId)
|
|
{
|
|
return _jobRepository.GetJobListByTextAndWorkshopId(textSearch, workshopId);
|
|
}
|
|
|
|
|
|
} |