Files
Backend-Api/CompanyManagment.Application/FineSubjectApplication.cs

62 lines
1.7 KiB
C#

using System.Collections.Generic;
using _0_Framework_b.Application;
using Company.Domain.FineSubjectAgg;
using CompanyManagment.App.Contracts.FineSubject;
namespace CompanyManagment.Application;
public class FineSubjectApplication:IFineSubjectApplication
{
private readonly IFineSubjectRepository _fineSubjectRepository;
public FineSubjectApplication(IFineSubjectRepository fineSubjectRepository)
{
_fineSubjectRepository= fineSubjectRepository;
}
public OperationResult Create(CreateFineSubjectViewModel command)
{
OperationResult op = new OperationResult();
if (string.IsNullOrWhiteSpace(command.Subject))
return op.Failed("نام جریمه نمیتواند خالی باشد");
var entity = new FineSubject(command.Subject, command.Amount, command.WorkshopId);
_fineSubjectRepository.Create(entity);
_fineSubjectRepository.SaveChanges();
return op.Succcedded();
}
public OperationResult Delete(long id)
{
OperationResult op = new OperationResult();
var entity = _fineSubjectRepository.Get(id);
if (entity == null)
return op.Failed("این آیتم وجود ندارد");
_fineSubjectRepository.Remove(entity);
_fineSubjectRepository.SaveChanges();
return op.Succcedded();
}
public OperationResult Edit(EditFineSubjectViewModel command)
{
OperationResult op = new OperationResult();
var entity = _fineSubjectRepository.Get(command.Id);
if (entity == null)
return op.Failed("این آیتم وجود ندارد");
entity.Edit(command.Subject,command.Amount);
_fineSubjectRepository.SaveChanges();
return op.Succcedded();
}
public List<FineSubjectViewModel> GetAll(long workshopId)
{
return _fineSubjectRepository.GetAll(workshopId);
}
}