using Microsoft.AspNetCore.Mvc;
using DOAN.Model.MES.group;
using DOAN.Model.MES.group.Dto;
using DOAN.Service.group.IService;
using DOAN.Admin.WebApi.Filters;
//创建时间:2024-08-12
namespace DOAN.Admin.WebApi.Controllers
{
///
/// 人员技能矩阵图
///
[Verify]
[Route("mes/groupManagement/GroupPersonSkill")]
public class GroupPersonSkillController : BaseController
{
///
/// 人员技能矩阵图接口
///
private readonly IGroupPersonSkillService _GroupPersonSkillService;
public GroupPersonSkillController(IGroupPersonSkillService GroupPersonSkillService)
{
_GroupPersonSkillService = GroupPersonSkillService;
}
///
/// 查询人员技能矩阵图列表
///
///
///
[HttpGet("list")]
[ActionPermissionFilter(Permission = "groupManagement:GroupPersonSkill:list")]
public IActionResult QueryGroupPersonSkill([FromQuery] GroupPersonSkillQueryDto parm)
{
var response = _GroupPersonSkillService.GetList(parm);
return SUCCESS(response);
}
///
/// 查询人员技能矩阵图详情
///
///
///
[HttpGet("{Id}")]
[ActionPermissionFilter(Permission = "groupManagement:GroupPersonSkill:query")]
public IActionResult GetGroupPersonSkill(string Id)
{
var response = _GroupPersonSkillService.GetInfo(Id);
var info = response.Adapt();
return SUCCESS(info);
}
///
/// 添加人员技能矩阵图
///
///
[HttpPost]
[ActionPermissionFilter(Permission = "groupManagement:GroupPersonSkill:add")]
[Log(Title = "人员技能矩阵图", BusinessType = BusinessType.INSERT)]
public IActionResult AddGroupPersonSkill([FromBody] GroupPersonSkillDto parm)
{
var modal = parm.Adapt().ToCreate(HttpContext);
var response = _GroupPersonSkillService.AddGroupPersonSkill(modal);
return SUCCESS(response);
}
///
/// 更新人员技能矩阵图
///
///
[HttpPut]
[ActionPermissionFilter(Permission = "groupManagement:GroupPersonSkill:edit")]
[Log(Title = "人员技能矩阵图", BusinessType = BusinessType.UPDATE)]
public IActionResult UpdateGroupPersonSkill([FromBody] GroupPersonSkillDto parm)
{
var modal = parm.Adapt().ToUpdate(HttpContext);
var response = _GroupPersonSkillService.UpdateGroupPersonSkill(modal);
return ToResponse(response);
}
///
/// 删除人员技能矩阵图
///
///
[HttpDelete("{ids}")]
[ActionPermissionFilter(Permission = "groupManagement:GroupPersonSkill:delete")]
[Log(Title = "人员技能矩阵图", BusinessType = BusinessType.DELETE)]
public IActionResult DeleteGroupPersonSkill(string ids)
{
string[] idsArr = Tools.SpitStrArrary(ids);
if (idsArr.Length <= 0) { return ToResponse(ApiResult.Error($"删除失败Id 不能为空")); }
var response = _GroupPersonSkillService.Delete(idsArr);
return ToResponse(response);
}
//TODO 获取人员已经拥有的技能
[HttpGet("get_person_own_skills")]
public IActionResult GetPersonSkills(string person_id)
{
if (string.IsNullOrEmpty(person_id)) { return SUCCESS(null); }
var response = _GroupPersonSkillService.GetPersonSkills(person_id);
return SUCCESS(response);
}
//TODO 获取人员未拥有的技能
[HttpPost("get_person_unown_skills")]
public IActionResult GetPersonUnownSkills([FromBody]GroupPersonSkillQueryDto2 parm)
{
if (string.IsNullOrEmpty(parm.person_id)) { return SUCCESS(null); }
var response = _GroupPersonSkillService.GetPersonUnownSkills(parm);
return SUCCESS(response);
}
//TODO 人员技能评估
///
/// 人员技能评估
///
///
///
[HttpPost("person_skill_assessment")]
public IActionResult PersonskillAssessment([FromBody] GroupRelPersonSkill relPersonSkill)
{
if (relPersonSkill == null)
{
return SUCCESS(null);
}
relPersonSkill.ToCreate(HttpContext);
var response = _GroupPersonSkillService.PersonskillAssessment(relPersonSkill);
return ToResponse(response);
}
///
/// 取消绑定
///
///
///
///
[HttpGet("cancal_person_skill_bind")]
public IActionResult CancalPersonSkillBind(string person_id,string skill_id)
{
if (string.IsNullOrEmpty(person_id)) { return SUCCESS(null); }
if (string.IsNullOrEmpty(skill_id)) { return SUCCESS(null); }
var response = _GroupPersonSkillService.CancalPersonSkillBind(person_id, skill_id);
return ToResponse(response);
}
}
}