Rotating Shift api completed
This commit is contained in:
@@ -79,7 +79,7 @@ public interface ICheckoutApplication
|
||||
/// </summary>
|
||||
/// <param name="id"></param>
|
||||
/// <returns></returns>
|
||||
Task<RotatingShiftOfCheckoutDto> GetRotatingShift(long id);
|
||||
Task<RotatingShiftOfCheckoutDto> GetRotatingShiftApi(long id);
|
||||
|
||||
#endregion
|
||||
}
|
||||
@@ -731,59 +731,46 @@ public class CheckoutApplication : ICheckoutApplication
|
||||
}
|
||||
|
||||
|
||||
public async Task<RotatingShiftOfCheckoutDto> GetRotatingShift(long id)
|
||||
public async Task<RotatingShiftOfCheckoutDto> GetRotatingShiftApi(long id)
|
||||
{
|
||||
var result = new ComputingViewModel();
|
||||
var checkout = GetDetails(id);
|
||||
var workingHours = _workingHoursTempRepository.GetByContractIdConvertToShiftwork4(checkout.ContractId);
|
||||
|
||||
var typeOfWorkingHours = "";
|
||||
if (checkout.HasRollCall)
|
||||
{
|
||||
var result = await _rollCallMandatoryRepository.RotatingShiftReport(checkout.WorkshopId, checkout.EmployeeId, checkout.ContractStartGr, checkout.ContractEndGr, workingHours.ShiftWork, true, workingHours, false);
|
||||
var items = result.RotatingResultList.Select(x => new RotatingShiftListDto()
|
||||
{
|
||||
MorningShiftSpan = x.MorningString,
|
||||
EveningShiftSpan = x.EveningString,
|
||||
NightShiftSpan = x.NightString,
|
||||
result = await _rollCallMandatoryRepository.RotatingShiftReport(checkout.WorkshopId, checkout.EmployeeId, checkout.ContractStartGr, checkout.ContractEndGr, workingHours.ShiftWork, true, workingHours, false);
|
||||
typeOfWorkingHours = "دارای حضورغیاب";
|
||||
|
||||
IsMorningShift = x.IsMorningShift,
|
||||
IsEveningShift = x.IsEveningShift,
|
||||
IsNightShift = x.IsNightShift,
|
||||
|
||||
ShiftDate = x.RotatingDate
|
||||
}).ToList();
|
||||
return new RotatingShiftOfCheckoutDto()
|
||||
{
|
||||
FullName = checkout.EmployeeFullName,
|
||||
YearAndMonth = $"{checkout.Month} {checkout.Year}",
|
||||
HasRotatingShift = result.RotatingStatus == "نوبت کاری ندارد",
|
||||
RotatingShiftStatus = result.RotatingStatus,
|
||||
TypeOfWorkingHours = "دارای حضورغیاب",
|
||||
RotatingShiftList = items
|
||||
};
|
||||
}
|
||||
else
|
||||
{
|
||||
var ConvertYear = checkout.ContractStart.Substring(0, 4);
|
||||
var ConvertMonth = checkout.ContractStart.Substring(5, 2);
|
||||
|
||||
//var contract = _contractApplication.GetDetails(checkout.ContractId);
|
||||
var workshop = _workshopRepository.GetDetails(checkout.WorkshopId);
|
||||
//var separation = _contractApplication.contractSeparation(ConvertYear, ConvertMonth,
|
||||
// contract.ContractStartGr, contract.ContractEndGr, contract.EmployeeId, contract.WorkshopIds);
|
||||
//workingHours.ContractStartGr = separation.ContractStartGr;
|
||||
//workingHours.ContractEndGr = separation.ContractEndGr;
|
||||
//workingHours.ContarctStart = separation.ContarctStart;
|
||||
//workingHours.ContractEnd = separation.ContractEnd;
|
||||
//workingHours.GetWorkDate = contract.GetWorkDate;
|
||||
//workingHours.GetWorkDateHide = contract.GetWorkDate;
|
||||
//workingHours.WorkshopId = contract.WorkshopIds;
|
||||
//workingHours.EmployeeId = contract.EmployeeId;
|
||||
|
||||
var result = await _rollCallMandatoryRepository.RotatingShiftReport(checkout.WorkshopId, checkout.EmployeeId, checkout.ContractStartGr, checkout.ContractEndGr, workingHours.ShiftWork, false, workingHours, workshop.WorkshopHolidayWorking);
|
||||
var workshop = _workshopRepository.GetDetails(checkout.WorkshopId);
|
||||
result = await _rollCallMandatoryRepository.RotatingShiftReport(checkout.WorkshopId, checkout.EmployeeId, checkout.ContractStartGr, checkout.ContractEndGr, workingHours.ShiftWork, false, workingHours, workshop.WorkshopHolidayWorking);
|
||||
typeOfWorkingHours = "بدون حضورغیاب";
|
||||
}
|
||||
|
||||
var items = result.RotatingResultList.Select(x => new RotatingShiftListDto()
|
||||
{
|
||||
MorningShiftSpan = x.MorningString,
|
||||
EveningShiftSpan = x.EveningString,
|
||||
NightShiftSpan = x.NightString,
|
||||
|
||||
return new RotatingShiftOfCheckoutDto();
|
||||
IsMorningShift = x.IsMorningShift,
|
||||
IsEveningShift = x.IsEveningShift,
|
||||
IsNightShift = x.IsNightShift,
|
||||
|
||||
ShiftDate = x.RotatingDate
|
||||
}).ToList();
|
||||
return new RotatingShiftOfCheckoutDto()
|
||||
{
|
||||
FullName = checkout.EmployeeFullName,
|
||||
YearAndMonth = $"{checkout.Month} {checkout.Year}",
|
||||
HasRotatingShift = result.RotatingStatus != "نوبت کاری ندارد",
|
||||
RotatingShiftStatus = result.RotatingStatus,
|
||||
TypeOfWorkingHours = typeOfWorkingHours,
|
||||
RotatingShiftList = items
|
||||
};
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
@@ -1607,6 +1607,11 @@ public class RollCallMandatoryRepository : RepositoryBase<long, RollCall>, IRoll
|
||||
|
||||
#region Entities
|
||||
|
||||
if (string.IsNullOrWhiteSpace(command.ContarctStart) || string.IsNullOrWhiteSpace(command.ContractEnd))
|
||||
{
|
||||
command.ContarctStart = command.ContractStartGr.ToFarsi();
|
||||
command.ContractEnd = command.ContractEndGr.ToFarsi();
|
||||
}
|
||||
var sdate = command.ContarctStart.ToEnglishNumber();
|
||||
var edate = command.ContractEnd.ToEnglishNumber();
|
||||
var syear = Convert.ToInt32(sdate.Substring(0, 4));
|
||||
|
||||
@@ -21,10 +21,23 @@ public class CheckoutController : AdminBaseController
|
||||
/// </summary>
|
||||
/// <param name="searchModel"></param>
|
||||
/// <returns></returns>
|
||||
[HttpGet("GetList")]
|
||||
[HttpGet]
|
||||
public async Task<ActionResult<PagedResult<CheckoutDto>>> GetList(CheckoutSearchModelDto searchModel)
|
||||
{
|
||||
return await _checkoutApplication.GetList(searchModel);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// دریافت نوبت کاری
|
||||
/// </summary>
|
||||
/// <param name="id"></param>
|
||||
/// <returns></returns>
|
||||
[HttpGet("RotatingShift")]
|
||||
public async Task<RotatingShiftOfCheckoutDto> GetRotatingShift(long id)
|
||||
{
|
||||
var result =await _checkoutApplication.GetRotatingShiftApi(id);
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user