Commit e12a00a8 authored by hasan khaddour's avatar hasan khaddour

fix tracking naming issue

parent a2769352
...@@ -81,10 +81,10 @@ namespace PSManagement.Api.Controllers.Customers ...@@ -81,10 +81,10 @@ namespace PSManagement.Api.Controllers.Customers
} }
[HttpDelete] [HttpDelete("{id}")]
public async Task<IActionResult> Delete(DeleteCustomerRequest request) public async Task<IActionResult> Delete(int id)
{ {
var command = _mapper.Map<DeleteCustomerCommand>(request); var command = new DeleteCustomerCommand(id);
var result = await _sender.Send(command); var result = await _sender.Send(command);
......
...@@ -66,7 +66,7 @@ namespace PSManagement.Api.Controllers.FinancialSpends ...@@ -66,7 +66,7 @@ namespace PSManagement.Api.Controllers.FinancialSpends
return HandleResult(_mapper.Map<Result<FinancialSpendingResponse>>(result)); ; return HandleResult(_mapper.Map<Result<FinancialSpendingResponse>>(result)); ;
} }
[HttpGet("GetByProject")] [HttpGet("ByProject")]
public async Task<IActionResult> GetByProject([FromQuery] GetFinancialSpendItemByProjecRequest request) public async Task<IActionResult> GetByProject([FromQuery] GetFinancialSpendItemByProjecRequest request)
{ {
var query = _mapper.Map<GetFinancialSpendItemByProjectQuery>(request); var query = _mapper.Map<GetFinancialSpendItemByProjectQuery>(request);
...@@ -77,7 +77,7 @@ namespace PSManagement.Api.Controllers.FinancialSpends ...@@ -77,7 +77,7 @@ namespace PSManagement.Api.Controllers.FinancialSpends
} }
[HttpDelete("{id}")] [HttpDelete("{id}")]
public async Task<IActionResult> Delete( RemoveFinancialSpendItemRequest request,[FromRoute]int id) public async Task<IActionResult> Delete([FromQuery] RemoveFinancialSpendItemRequest request,[FromRoute]int id)
{ {
if (id != request.Id) { if (id != request.Id) {
Result.Conflict(); Result.Conflict();
......
...@@ -52,7 +52,7 @@ namespace PSManagement.Api.Controllers.Projects ...@@ -52,7 +52,7 @@ namespace PSManagement.Api.Controllers.Projects
{ {
var query = _mapper.Map<ListAllProjectsQuery>(request); var query = _mapper.Map<ListAllProjectsQuery>(request);
var result = _mapper.Map<Result<IEnumerable<ProjectResponse>>>(await _sender.Send(query)); var result = _mapper.Map<Result<IEnumerable<ProjectDetailsResponse>>>(await _sender.Send(query));
return HandleResult(result); return HandleResult(result);
} }
...@@ -65,7 +65,7 @@ namespace PSManagement.Api.Controllers.Projects ...@@ -65,7 +65,7 @@ namespace PSManagement.Api.Controllers.Projects
var result = await _sender.Send(query); var result = await _sender.Send(query);
return HandleResult(_mapper.Map<Result<IEnumerable<ProjectResponse>>>(result)); return HandleResult(_mapper.Map<Result<IEnumerable<ProjectDetailsResponse>>>(result));
} }
[HttpGet("ByProjectManager")] [HttpGet("ByProjectManager")]
...@@ -75,7 +75,7 @@ namespace PSManagement.Api.Controllers.Projects ...@@ -75,7 +75,7 @@ namespace PSManagement.Api.Controllers.Projects
var result = await _sender.Send(query); var result = await _sender.Send(query);
return HandleResult(_mapper.Map<Result<IEnumerable<ProjectResponse>>>(result)); return HandleResult(_mapper.Map<Result<IEnumerable<ProjectDetailsResponse>>>(result));
} }
[HttpGet("GetParticipants/{id}")] [HttpGet("GetParticipants/{id}")]
......
...@@ -51,7 +51,7 @@ namespace PSManagement.Api.Controllers.Steps ...@@ -51,7 +51,7 @@ namespace PSManagement.Api.Controllers.Steps
return HandleResult(result); return HandleResult(result);
} }
[HttpPut("{id}")] [HttpPut("ChangeStepWeight/{id}")]
public async Task<IActionResult> PutChangeStepWeight(ChangeStepWeightRequest request,[FromRoute]int id) public async Task<IActionResult> PutChangeStepWeight(ChangeStepWeightRequest request,[FromRoute]int id)
{ {
if (request.StepId != id) { if (request.StepId != id) {
...@@ -75,7 +75,7 @@ namespace PSManagement.Api.Controllers.Steps ...@@ -75,7 +75,7 @@ namespace PSManagement.Api.Controllers.Steps
return HandleResult(result); return HandleResult(result);
} }
[HttpPut] [HttpPut("ChangeCompletionRatio/{id}")]
public async Task<IActionResult> PutCompletionRatio(UpdateCompletionRatioRequest request) public async Task<IActionResult> PutCompletionRatio(UpdateCompletionRatioRequest request)
{ {
var query = _mapper.Map<UpdateCompletionRatioCommand>(request); var query = _mapper.Map<UpdateCompletionRatioCommand>(request);
...@@ -90,7 +90,7 @@ namespace PSManagement.Api.Controllers.Steps ...@@ -90,7 +90,7 @@ namespace PSManagement.Api.Controllers.Steps
{ {
var query = new RemoveStepCommand(id); var query = new RemoveStepCommand(id);
var result = _mapper.Map<Result>(await _sender.Send(query)); var result =await _sender.Send(query);
return HandleResult(result); return HandleResult(result);
} }
......
...@@ -44,7 +44,7 @@ namespace PSManagement.Api.Controllers.Tracks ...@@ -44,7 +44,7 @@ namespace PSManagement.Api.Controllers.Tracks
return HandleResult(result); return HandleResult(result);
} }
[HttpGet("GetStepsTrack{id}")] [HttpGet("GetStepsTrack/{id}")]
public async Task<IActionResult> GetStepsTrack([FromRoute]int id) public async Task<IActionResult> GetStepsTrack([FromRoute]int id)
{ {
var query = new GetStepsTrackQuery(id); var query = new GetStepsTrackQuery(id);
...@@ -54,7 +54,7 @@ namespace PSManagement.Api.Controllers.Tracks ...@@ -54,7 +54,7 @@ namespace PSManagement.Api.Controllers.Tracks
return HandleResult(result); return HandleResult(result);
} }
[HttpGet("GetEmployeesTrack{id}")] [HttpGet("GetEmployeesTrack/{id}")]
public async Task<IActionResult> GetEmployeesTrack([FromRoute] int id) public async Task<IActionResult> GetEmployeesTrack([FromRoute] int id)
{ {
var query = new GetEmployeesTrackQuery(id); var query = new GetEmployeesTrackQuery(id);
...@@ -148,6 +148,8 @@ namespace PSManagement.Api.Controllers.Tracks ...@@ -148,6 +148,8 @@ namespace PSManagement.Api.Controllers.Tracks
return HandleResult(result); return HandleResult(result);
} }
[HttpPut("UpdateStepTrack")] [HttpPut("UpdateStepTrack")]
public async Task<IActionResult> PutStepTrack(UpdateStepTrackRequest request) public async Task<IActionResult> PutStepTrack(UpdateStepTrackRequest request)
{ {
......
...@@ -59,7 +59,11 @@ namespace PSManagement.Api.Mappers ...@@ -59,7 +59,11 @@ namespace PSManagement.Api.Mappers
CreateMap<ChangeProjectTeamLeaderRequest, ChangeProjectTeamLeaderCommand>().ReverseMap(); CreateMap<ChangeProjectTeamLeaderRequest, ChangeProjectTeamLeaderCommand>().ReverseMap();
CreateMap<RemoveParticipantRequest, RemoveParticipantCommand>().ReverseMap(); CreateMap<RemoveParticipantRequest, RemoveParticipantCommand>().ReverseMap();
CreateMap<ProjectDTO,ProjectResponse>().ReverseMap(); CreateMap<ProjectDTO,ProjectResponse>().ReverseMap();
CreateMap<GetProjectsByProjectManagerRequest,GetProjectsByFilterQuery>().ConstructUsing(
s => new GetProjectsByFilterQuery(null,null,null,null,s.ProjectManagerId,null,null,null)
);
CreateMap<EmployeeResponse, EmployeeDTO>().ReverseMap(); CreateMap<EmployeeResponse, EmployeeDTO>().ReverseMap();
CreateMap<EmployeeParticipateResponse, EmployeeParticipateDTO>().ReverseMap(); CreateMap<EmployeeParticipateResponse, EmployeeParticipateDTO>().ReverseMap();
......
...@@ -37,7 +37,9 @@ namespace PSManagement.Application.Mappers ...@@ -37,7 +37,9 @@ namespace PSManagement.Application.Mappers
; ;
CreateMap<Employee, EmployeeDTO>() CreateMap<Employee, EmployeeDTO>()
.ForMember(e => e.DepartmentName, op => op.MapFrom(e => e.Department.Name)); .ForMember(e => e.DepartmentName, op => op.MapFrom(e => e.Department.Name))
.ForMember(e => e.Email, op => op.MapFrom(e => e.User.Email))
;
CreateMap< EmployeeParticipate, EmployeeParticipateDTO>() CreateMap< EmployeeParticipate, EmployeeParticipateDTO>()
...@@ -56,7 +58,9 @@ namespace PSManagement.Application.Mappers ...@@ -56,7 +58,9 @@ namespace PSManagement.Application.Mappers
CreateMap<Project, ProjectInfo>() CreateMap<Project, ProjectInfo>()
.ConvertUsing(project => project.ProjectInfo); .ConvertUsing(project => project.ProjectInfo);
CreateMap<Track, TrackDTO>(); CreateMap<Track, TrackDTO>()
.ForMember(e => e.ProjectInfo , op =>op.MapFrom(s => s.Project.ProjectInfo))
;
CreateMap<CreateTrackCommand, Track>().ReverseMap(); CreateMap<CreateTrackCommand, Track>().ReverseMap();
CreateMap<AddEmployeeTrackCommand, EmployeeTrack>().ReverseMap(); CreateMap<AddEmployeeTrackCommand, EmployeeTrack>().ReverseMap();
......
...@@ -12,6 +12,8 @@ namespace PSManagement.Application.Employees.Common ...@@ -12,6 +12,8 @@ namespace PSManagement.Application.Employees.Common
public int Id { get; set; } public int Id { get; set; }
public int HIASTId { get; set; } public int HIASTId { get; set; }
public int UserId { get; set; } public int UserId { get; set; }
public string Email { get; set; }
public String DepartmentName { get; set; } public String DepartmentName { get; set; }
public PersonalInfo PersonalInfo { get; set; } public PersonalInfo PersonalInfo { get; set; }
public WorkInfo WorkInfo { get; set; } public WorkInfo WorkInfo { get; set; }
......
...@@ -33,7 +33,7 @@ namespace PSManagement.Application.Employees.UseCases.Queries.GetAvailableEmploy ...@@ -33,7 +33,7 @@ namespace PSManagement.Application.Employees.UseCases.Queries.GetAvailableEmploy
int pageSize = request.PageSize.HasValue && request.PageSize.Value > 0 && request.PageSize.Value <= 30 ? request.PageSize.Value : 30; int pageSize = request.PageSize.HasValue && request.PageSize.Value > 0 && request.PageSize.Value <= 30 ? request.PageSize.Value : 30;
_specification.ApplyPaging((pageNumber - 1) * pageSize, pageSize); _specification.ApplyPaging((pageNumber - 1) * pageSize, pageSize);
_specification.AddInclude(e => e.Department); _specification.AddInclude(e => e.Department);
_specification.AddInclude(e => e.User);
return Result.Success(_mapper.Map<IEnumerable<EmployeeDTO>>(await _employeesRepository.ListAsync(_specification))); return Result.Success(_mapper.Map<IEnumerable<EmployeeDTO>>(await _employeesRepository.ListAsync(_specification)));
} }
} }
......
...@@ -29,6 +29,8 @@ namespace PSManagement.Application.Employees.UseCases.Queries.GetEmployeeById ...@@ -29,6 +29,8 @@ namespace PSManagement.Application.Employees.UseCases.Queries.GetEmployeeById
public async Task<Result<EmployeeDTO>> Handle(GetEmployeeByIdQuery request, CancellationToken cancellationToken) public async Task<Result<EmployeeDTO>> Handle(GetEmployeeByIdQuery request, CancellationToken cancellationToken)
{ {
_specification.AddInclude(e => e.Department); _specification.AddInclude(e => e.Department);
_specification.AddInclude(e => e.User);
return Result.Success(_mapper.Map<EmployeeDTO>(await _employeesRepository.GetByIdAsync(request.EmployeeId,_specification))); return Result.Success(_mapper.Map<EmployeeDTO>(await _employeesRepository.GetByIdAsync(request.EmployeeId,_specification)));
} }
} }
......
...@@ -35,12 +35,13 @@ namespace PSManagement.Application.Employees.UseCases.Queries.GetEmployeeById ...@@ -35,12 +35,13 @@ namespace PSManagement.Application.Employees.UseCases.Queries.GetEmployeeById
_specification.ApplyPaging((pageNumber - 1) * pageSize, pageSize); _specification.ApplyPaging((pageNumber - 1) * pageSize, pageSize);
_specification.AddInclude(e => e.Project); _specification.AddInclude(e => e.Project);
_specification.AddInclude("Employee.Department"); _specification.AddInclude("Employee.User");
_specification.AddInclude(e => e.Employee); _specification.AddInclude(e => e.Employee);
_specification.AddInclude(e => e.Employee.Department); _specification.AddInclude(e => e.Employee.Department);
IEnumerable<EmployeeParticipate> response = await _employeesParticipateRepository.ListAsync(_specification); IEnumerable<EmployeeParticipate> response = await _employeesParticipateRepository.ListAsync(_specification);
response =response.Where(e => e.EmployeeId == request.EmployeeId).ToList(); response =response.Where(e => e.EmployeeId == request.EmployeeId).ToList();
......
...@@ -34,7 +34,9 @@ namespace PSManagement.Application.Employees.UseCases.Queries.GetEmployeeTrackHi ...@@ -34,7 +34,9 @@ namespace PSManagement.Application.Employees.UseCases.Queries.GetEmployeeTrackHi
int pageSize = request.PageSize.HasValue && request.PageSize.Value > 0 && request.PageSize.Value <= 30 ? request.PageSize.Value : 30; int pageSize = request.PageSize.HasValue && request.PageSize.Value > 0 && request.PageSize.Value <= 30 ? request.PageSize.Value : 30;
_specification.AddInclude(e => e.Track); _specification.AddInclude(e => e.Track);
_specification.AddInclude(e => e.Employee); _specification.AddInclude(e => e.Employee);
_specification.Criteria = e => e.EmloyeeId == request.EmployeeId && e.Track.ProjectId == request.ProjectId; _specification.AddInclude(e => e.Employee.User);
_specification.Criteria = e => e.EmployeeId == request.EmployeeId && e.Track.ProjectId == request.ProjectId;
_specification.ApplyPaging((pageNumber - 1) * pageSize, pageSize); _specification.ApplyPaging((pageNumber - 1) * pageSize, pageSize);
IEnumerable<EmployeeTrack> employeeTracks = await _employeeTracksRepository.ListAsync( _specification); IEnumerable<EmployeeTrack> employeeTracks = await _employeeTracksRepository.ListAsync( _specification);
......
...@@ -8,6 +8,7 @@ namespace PSManagement.Application.Employees.UseCases.Queries.GetEmployeesByFilt ...@@ -8,6 +8,7 @@ namespace PSManagement.Application.Employees.UseCases.Queries.GetEmployeesByFilt
public record GetEmployeesByFilterQuery( public record GetEmployeesByFilterQuery(
string EmployeeFirstName, string EmployeeFirstName,
int? HiastId, int? HiastId,
string Email,
string DepartmentName, string DepartmentName,
string WorkType, string WorkType,
int? PageNumber, int? PageNumber,
......
...@@ -34,6 +34,7 @@ namespace PSManagement.Application.Employees.UseCases.Queries.GetEmployeesByFilt ...@@ -34,6 +34,7 @@ namespace PSManagement.Application.Employees.UseCases.Queries.GetEmployeesByFilt
_specification.ApplyPaging((pageNumber - 1) * pageSize, pageSize); _specification.ApplyPaging((pageNumber - 1) * pageSize, pageSize);
_specification.AddInclude(e=>e.Department); _specification.AddInclude(e=>e.Department);
_specification.AddInclude(e => e.User);
IEnumerable<Employee> employees =await _employeesRepository.ListAsync(_specification); IEnumerable<Employee> employees =await _employeesRepository.ListAsync(_specification);
if (!string.IsNullOrEmpty(request.DepartmentName)) if (!string.IsNullOrEmpty(request.DepartmentName))
...@@ -54,6 +55,10 @@ namespace PSManagement.Application.Employees.UseCases.Queries.GetEmployeesByFilt ...@@ -54,6 +55,10 @@ namespace PSManagement.Application.Employees.UseCases.Queries.GetEmployeesByFilt
{ {
employees = employees.Where(e => e.WorkInfo.WorkType.ToLower().Contains(request.WorkType.ToLower().Trim())); employees = employees.Where(e => e.WorkInfo.WorkType.ToLower().Contains(request.WorkType.ToLower().Trim()));
} }
if (!string.IsNullOrEmpty(request.Email))
{
employees = employees.Where(e => e.User.Email.ToLower().Contains(request.Email.ToLower().Trim()));
}
return Result.Success(_mapper.Map<IEnumerable<EmployeeDTO>>(employees)); return Result.Success(_mapper.Map<IEnumerable<EmployeeDTO>>(employees));
} }
......
...@@ -40,7 +40,7 @@ namespace PSManagement.Application.Projects.UseCases.Commands.AddProjectStep ...@@ -40,7 +40,7 @@ namespace PSManagement.Application.Projects.UseCases.Commands.AddProjectStep
} }
else else
{ {
Step step = await _stepsRepository.AddAsync(new(request.StepInfo ,request.ProjectId,request.Weight)); Step step = await _stepsRepository.AddAsync(new(request.StepInfo ,request.ProjectId,request.CurrentCompletionRatio,request.Weight));
await _unitOfWork.SaveChangesAsync(); await _unitOfWork.SaveChangesAsync();
......
...@@ -31,9 +31,9 @@ namespace PSManagement.Application.Projects.UseCases.Queries.GetProject ...@@ -31,9 +31,9 @@ namespace PSManagement.Application.Projects.UseCases.Queries.GetProject
{ {
_specification.Includes.Add(p=> p.EmployeeParticipates); _specification.Includes.Add(p=> p.EmployeeParticipates);
_specification.Includes.Add(p => p.FinancialSpending); _specification.Includes.Add(p => p.FinancialSpending);
_specification.Includes.Add(p => p.ProjectManager); _specification.Includes.Add(p => p.ProjectManager.Department);
_specification.Includes.Add(p => p.Attachments); _specification.Includes.Add(p => p.Attachments);
_specification.Includes.Add(p => p.TeamLeader); _specification.Includes.Add(p => p.TeamLeader.Department);
_specification.Includes.Add(p => p.Executer); _specification.Includes.Add(p => p.Executer);
_specification.Includes.Add(p => p.Proposer); _specification.Includes.Add(p => p.Proposer);
......
using PSManagement.Domain.Tracking.ValueObjects; using PSManagement.Domain.Tracking.ValueObjects;
using PSManagement.Domain.Employees.Entities;
namespace PSManagement.Application.Tracks.Common namespace PSManagement.Application.Tracks.Common
{ {
...@@ -6,6 +7,7 @@ namespace PSManagement.Application.Tracks.Common ...@@ -6,6 +7,7 @@ namespace PSManagement.Application.Tracks.Common
{ {
public int Id { get; set; } public int Id { get; set; }
public int EmloyeeId { get; set; } public int EmloyeeId { get; set; }
public Employee Emloyee { get; set; }
public int TrackId { get; set; } public int TrackId { get; set; }
public TrackInfo TrackInfo { get; set; } public TrackInfo TrackInfo { get; set; }
public EmployeeWorkInfo EmployeeWorkInfo { get; set; } public EmployeeWorkInfo EmployeeWorkInfo { get; set; }
......
using PSManagement.Application.Employees.Common; using PSManagement.Application.Employees.Common;
using PSManagement.Domain.Tracking.ValueObjects; using PSManagement.Domain.Tracking.ValueObjects;
using PSManagement.Domain.Projects.ValueObjects;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
...@@ -14,6 +15,6 @@ namespace PSManagement.Application.Tracks.Common ...@@ -14,6 +15,6 @@ namespace PSManagement.Application.Tracks.Common
public TrackInfo TrackInfo { get; set; } public TrackInfo TrackInfo { get; set; }
public String Notes { get; set; } public String Notes { get; set; }
public int ProjectId { get; set; } public int ProjectId { get; set; }
public ProjectInfo ProjectInfo {get; set;}
} }
} }
...@@ -11,6 +11,7 @@ using PSManagement.SharedKernel.Specification; ...@@ -11,6 +11,7 @@ using PSManagement.SharedKernel.Specification;
using System.Threading; using System.Threading;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Linq; using System.Linq;
using System;
namespace PSManagement.Application.Tracks.UseCaes.Commands.AddEmployeeTrack namespace PSManagement.Application.Tracks.UseCaes.Commands.AddEmployeeTrack
{ {
...@@ -53,12 +54,13 @@ namespace PSManagement.Application.Tracks.UseCaes.Commands.AddEmployeeTrack ...@@ -53,12 +54,13 @@ namespace PSManagement.Application.Tracks.UseCaes.Commands.AddEmployeeTrack
return Result.Invalid(TracksErrors.TrackCompletedUpdateError); return Result.Invalid(TracksErrors.TrackCompletedUpdateError);
} }
if (track.EmployeeTracks.Any(e => e.EmloyeeId == request.EmployeeId)) { if (track.EmployeeTracks.Any(e => e.EmployeeId == request.EmployeeId)) {
return Result.Invalid(TracksErrors.ParticipantTrackExistError); return Result.Invalid(TracksErrors.ParticipantTrackExistError);
} }
var r =_mapper.Map<EmployeeTrack>(request);
//Console.WriteLine(r.EmloyeeId);
EmployeeTrack employeeTrack = await _employeeTracksRepository.AddAsync(_mapper.Map<EmployeeTrack>(request)); EmployeeTrack employeeTrack = await _employeeTracksRepository.AddAsync(_mapper.Map<EmployeeTrack>(request));
await _unitOfWork.SaveChangesAsync(); await _unitOfWork.SaveChangesAsync();
......
...@@ -8,7 +8,6 @@ namespace PSManagement.Application.Tracks.UseCaes.Commands.AddStepTrack ...@@ -8,7 +8,6 @@ namespace PSManagement.Application.Tracks.UseCaes.Commands.AddStepTrack
int StepId, int StepId,
int TrackId, int TrackId,
string ExecutionState, string ExecutionState,
DateTime TrackDate,
int TrackExecutionRatio int TrackExecutionRatio
) : ICommand<Result<int>>; ) : ICommand<Result<int>>;
} }
\ No newline at end of file
...@@ -47,7 +47,7 @@ namespace PSManagement.Application.Tracks.UseCaes.Commands.UpdateEmployeeWorkTra ...@@ -47,7 +47,7 @@ namespace PSManagement.Application.Tracks.UseCaes.Commands.UpdateEmployeeWorkTra
return Result.Invalid(TracksErrors.InvalidEntryError); return Result.Invalid(TracksErrors.InvalidEntryError);
} }
if (request.EmployeeId != employeeTrack.EmloyeeId) if (request.EmployeeId != employeeTrack.EmployeeId)
{ {
return Result.Invalid(TracksErrors.InvalidEntryError); return Result.Invalid(TracksErrors.InvalidEntryError);
......
...@@ -37,7 +37,8 @@ namespace PSManagement.Application.Tracks.UseCaes.Queries.GetTracksByProject ...@@ -37,7 +37,8 @@ namespace PSManagement.Application.Tracks.UseCaes.Queries.GetTracksByProject
int pageNumber = request.PageNumber.HasValue && request.PageNumber.Value > 0 ? request.PageNumber.Value : 1; int pageNumber = request.PageNumber.HasValue && request.PageNumber.Value > 0 ? request.PageNumber.Value : 1;
int pageSize = request.PageSize.HasValue && request.PageSize.Value > 0 && request.PageSize.Value <= 30 ? request.PageSize.Value : 30; int pageSize = request.PageSize.HasValue && request.PageSize.Value > 0 && request.PageSize.Value <= 30 ? request.PageSize.Value : 30;
_specification.AddInclude(e => e.Project);
_specification.ApplyPaging((pageNumber - 1) * pageSize, pageSize); _specification.ApplyPaging((pageNumber - 1) * pageSize, pageSize);
_specification.Criteria = t => t.ProjectId == request.ProjectId; _specification.Criteria = t => t.ProjectId == request.ProjectId;
......
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
public record GetEmployeesByFilterRequest( public record GetEmployeesByFilterRequest(
string EmployeeFirstName, string EmployeeFirstName,
int? HiastId, int? HiastId,
string Email,
string DepartmentName, string DepartmentName,
string WorkType, string WorkType,
int? PageSize , int? PageSize ,
......
using PSManagement.Application.Employees.Common; using PSManagement.Application.Employees.Common;
using PSManagement.Domain.Projects.ValueObjects;
namespace PSManagement.Contracts.Projects.Response namespace PSManagement.Contracts.Projects.Response
{ {
...@@ -6,6 +7,8 @@ namespace PSManagement.Contracts.Projects.Response ...@@ -6,6 +7,8 @@ namespace PSManagement.Contracts.Projects.Response
{ {
public int EmployeeId { get; set; } public int EmployeeId { get; set; }
public int ProjectId { get; set; } public int ProjectId { get; set; }
public ProjectInfo ProjectInfo { get; set; }
public EmployeeResponse Employee { get; set; } public EmployeeResponse Employee { get; set; }
public int PartialTimeRatio { get; set; } public int PartialTimeRatio { get; set; }
public string Role { get; set; } public string Role { get; set; }
......
...@@ -7,6 +7,7 @@ namespace PSManagement.Contracts.Projects.Response ...@@ -7,6 +7,7 @@ namespace PSManagement.Contracts.Projects.Response
public int Id { get; set; } public int Id { get; set; }
public int HIASTId { get; set; } public int HIASTId { get; set; }
public int UserId { get; set; } public int UserId { get; set; }
public string Email { get; set; }
public string DepartmentName { get; set; } public string DepartmentName { get; set; }
public PersonalInfo PersonalInfo { get; set; } public PersonalInfo PersonalInfo { get; set; }
public Availability Availability { get; set; } public Availability Availability { get; set; }
......
namespace PSManagement.Contracts.Projects.Requests namespace PSManagement.Contracts.Projects.Requests
{ {
public record GetProjectsByProjectManagerRequest( public record GetProjectsByProjectManagerRequest(
int ProjectManager, int ProjectManagerId,
int? PageNumber , int? PageNumber ,
int? PageSize int? PageSize
); );
......
...@@ -12,6 +12,7 @@ namespace PSManagement.Contracts.Projects.Response ...@@ -12,6 +12,7 @@ namespace PSManagement.Contracts.Projects.Response
public string CurrentState { get; set; } public string CurrentState { get; set; }
public Aggreement ProjectAggreement { get; set; } public Aggreement ProjectAggreement { get; set; }
public ProjectClassification ProjectClassification { get; set; }
public EmployeeResponse TeamLeader { get; set; } public EmployeeResponse TeamLeader { get; set; }
public EmployeeResponse ProjectManager { get; set; } public EmployeeResponse ProjectManager { get; set; }
public Department Executer { get; set; } public Department Executer { get; set; }
......
...@@ -15,6 +15,7 @@ namespace PSManagement.Contracts.Projects.Response ...@@ -15,6 +15,7 @@ namespace PSManagement.Contracts.Projects.Response
public Aggreement ProjectAggreement { get; set; } public Aggreement ProjectAggreement { get; set; }
public int TeamLeaderId { get; set; } public int TeamLeaderId { get; set; }
public ProjectClassification ProjectClassification { get; set; }
public EmployeeResponse TeamLeader { get; set; } public EmployeeResponse TeamLeader { get; set; }
public int ProjectManagerId { get; set; } public int ProjectManagerId { get; set; }
public EmployeeResponse ProjectManager { get; set; } public EmployeeResponse ProjectManager { get; set; }
......
...@@ -10,7 +10,6 @@ namespace PSManagement.Contracts.Tracks.Requests ...@@ -10,7 +10,6 @@ namespace PSManagement.Contracts.Tracks.Requests
int StepId, int StepId,
int TrackId, int TrackId,
string ExecutionState, string ExecutionState,
DateTime TrackDate,
int TrackExecutionRatio int TrackExecutionRatio
); );
} }
using PSManagement.Domain.Tracking.ValueObjects; using PSManagement.Domain.Tracking.ValueObjects;
using PSManagement.Domain.Employees.Entities;
namespace PSManagement.Contracts.Tracks.Response namespace PSManagement.Contracts.Tracks.Response
{ {
public record EmployeeTrackResponse( public record EmployeeTrackResponse(
int EmloyeeId, int EmloyeeId,
int TrackId, int TrackId,
Employee Employee,
TrackInfo TrackInfo, TrackInfo TrackInfo,
EmployeeWorkInfo EmployeeWorkInfo, EmployeeWorkInfo EmployeeWorkInfo,
EmployeeWork EmployeeWork, EmployeeWork EmployeeWork,
......
using PSManagement.Domain.Tracking.ValueObjects; using PSManagement.Domain.Tracking.ValueObjects;
using PSManagement.Domain.Projects.ValueObjects;
using System; using System;
namespace PSManagement.Contracts.Tracks.Response namespace PSManagement.Contracts.Tracks.Response
...@@ -7,6 +9,7 @@ namespace PSManagement.Contracts.Tracks.Response ...@@ -7,6 +9,7 @@ namespace PSManagement.Contracts.Tracks.Response
int Id , int Id ,
TrackInfo TrackInfo , TrackInfo TrackInfo ,
String Notes , String Notes ,
int ProjectId int ProjectId ,
ProjectInfo ProjectInfo
); );
} }
...@@ -28,8 +28,9 @@ namespace PSManagement.Domain.Projects.Entities ...@@ -28,8 +28,9 @@ namespace PSManagement.Domain.Projects.Entities
} }
public Step(StepInfo stepInfo, int projectId, int weight) public Step(StepInfo stepInfo, int projectId,int currentCompletionRatio, int weight)
{ {
CurrentCompletionRatio =currentCompletionRatio;
StepInfo = stepInfo; StepInfo = stepInfo;
ProjectId = projectId; ProjectId = projectId;
Weight = weight; Weight = weight;
......
...@@ -6,7 +6,7 @@ namespace PSManagement.Domain.Tracking ...@@ -6,7 +6,7 @@ namespace PSManagement.Domain.Tracking
{ {
public class EmployeeTrack :BaseEntity public class EmployeeTrack :BaseEntity
{ {
public int EmloyeeId { get; set; } public int EmployeeId { get; set; }
public int TrackId { get; set; } public int TrackId { get; set; }
public Employee Employee { get; set; } public Employee Employee { get; set; }
public Track Track { get; set; } public Track Track { get; set; }
......
...@@ -50,7 +50,7 @@ namespace PSManagement.Infrastructure.Persistence.EntitiesConfiguration ...@@ -50,7 +50,7 @@ namespace PSManagement.Infrastructure.Persistence.EntitiesConfiguration
{ {
builder.HasOne(st => st.Employee) builder.HasOne(st => st.Employee)
.WithMany(s => s.EmployeeTracks) .WithMany(s => s.EmployeeTracks)
.HasForeignKey(st => st.EmloyeeId) .HasForeignKey(st => st.EmployeeId)
; ;
builder.OwnsOne(e => e.EmployeeWorkInfo, p => builder.OwnsOne(e => e.EmployeeWorkInfo, p =>
......
using Microsoft.EntityFrameworkCore.Migrations;
namespace PSManagement.Infrastructure.Persistence.Migrations
{
public partial class FixTrackNaming : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_EmployeeTrack_Employees_EmloyeeId",
table: "EmployeeTrack");
migrationBuilder.RenameColumn(
name: "EmloyeeId",
table: "EmployeeTrack",
newName: "EmployeeId");
migrationBuilder.RenameIndex(
name: "IX_EmployeeTrack_EmloyeeId",
table: "EmployeeTrack",
newName: "IX_EmployeeTrack_EmployeeId");
migrationBuilder.AddForeignKey(
name: "FK_EmployeeTrack_Employees_EmployeeId",
table: "EmployeeTrack",
column: "EmployeeId",
principalTable: "Employees",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_EmployeeTrack_Employees_EmployeeId",
table: "EmployeeTrack");
migrationBuilder.RenameColumn(
name: "EmployeeId",
table: "EmployeeTrack",
newName: "EmloyeeId");
migrationBuilder.RenameIndex(
name: "IX_EmployeeTrack_EmployeeId",
table: "EmployeeTrack",
newName: "IX_EmployeeTrack_EmloyeeId");
migrationBuilder.AddForeignKey(
name: "FK_EmployeeTrack_Employees_EmloyeeId",
table: "EmployeeTrack",
column: "EmloyeeId",
principalTable: "Employees",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
}
}
}
...@@ -458,7 +458,7 @@ namespace PSManagement.Infrastructure.Persistence.Migrations ...@@ -458,7 +458,7 @@ namespace PSManagement.Infrastructure.Persistence.Migrations
.HasColumnType("int") .HasColumnType("int")
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
b.Property<int>("EmloyeeId") b.Property<int>("EmployeeId")
.HasColumnType("int"); .HasColumnType("int");
b.Property<string>("Notes") b.Property<string>("Notes")
...@@ -469,7 +469,7 @@ namespace PSManagement.Infrastructure.Persistence.Migrations ...@@ -469,7 +469,7 @@ namespace PSManagement.Infrastructure.Persistence.Migrations
b.HasKey("Id"); b.HasKey("Id");
b.HasIndex("EmloyeeId"); b.HasIndex("EmployeeId");
b.HasIndex("TrackId"); b.HasIndex("TrackId");
...@@ -1032,7 +1032,7 @@ namespace PSManagement.Infrastructure.Persistence.Migrations ...@@ -1032,7 +1032,7 @@ namespace PSManagement.Infrastructure.Persistence.Migrations
{ {
b.HasOne("PSManagement.Domain.Employees.Entities.Employee", "Employee") b.HasOne("PSManagement.Domain.Employees.Entities.Employee", "Employee")
.WithMany("EmployeeTracks") .WithMany("EmployeeTracks")
.HasForeignKey("EmloyeeId") .HasForeignKey("EmployeeId")
.OnDelete(DeleteBehavior.Cascade) .OnDelete(DeleteBehavior.Cascade)
.IsRequired(); .IsRequired();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment