api เลือกตำแหน่ง

This commit is contained in:
Kittapath 2023-07-05 10:56:13 +07:00
parent 2f49a5b87e
commit 0c56512f54
4 changed files with 106 additions and 30 deletions

View file

@ -275,12 +275,65 @@ namespace BMA.EHR.Placement.Service.Controllers
}
[HttpPost("pass")]
public async Task<ActionResult<ResponseObject>> UpdatePositionByPerson(Guid personalId)
public async Task<ActionResult<ResponseObject>> UpdatePositionByPerson([FromBody] PersonSelectPositionRequest req)
{
var person = await _context.PlacementProfiles.FindAsync(personalId);
var person = await _context.PlacementProfiles.FindAsync(req.PersonalId);
if (person == null)
return Error(GlobalMessages.DataNotFound, 404);
if (req.PosNoId != null)
{
var save_posNo = await _context.PositionNumbers.FindAsync(req.PosNoId);
if (save_posNo == null)
return Error(GlobalMessages.PositionPosNoNotFound, 404);
person.PositionNumber = save_posNo;
}
if (req.PositionId != null)
{
var save_position = await _context.PositionPaths.FindAsync(req.PositionId);
if (save_position == null)
return Error(GlobalMessages.PositionPathNotFound, 404);
person.PositionPath = save_position;
}
if (req.PositionLevelId != null)
{
var save_positionLevel = await _context.PositionLevels.FindAsync(req.PositionLevelId);
if (save_positionLevel == null)
return Error(GlobalMessages.PositionLevelNotFound, 404);
person.PositionLevel = save_positionLevel;
}
if (req.PositionLineId != null)
{
var save_positionLine = await _context.PositionLines.FindAsync(req.PositionLineId);
if (save_positionLine == null)
return Error(GlobalMessages.PositionLineNotFound, 404);
person.PositionLine = save_positionLine;
}
if (req.PositionPathSideId != null)
{
var save_positionPathSide = await _context.PositionPathSides.FindAsync(req.PositionPathSideId);
if (save_positionPathSide == null)
return Error(GlobalMessages.PositionPathSideNotFound, 404);
person.PositionPathSide = save_positionPathSide;
}
if (req.PositionTypeId != null)
{
var save_positionType = await _context.PositionTypes.FindAsync(req.PositionTypeId);
if (save_positionType == null)
return Error(GlobalMessages.PositionTypeNotFound, 404);
person.PositionType = save_positionType;
}
person.Amount = req.SalaryAmount;
person.MouthSalaryAmount = req.MouthSalaryAmount;
person.PositionSalaryAmount = req.PositionSalaryAmount;
person.RecruitDate = req.ContainDate;
_context.SaveChanges();
return Success();
}