Zxd.Core/code/Zxd.Crm.WebApi/Controllers/SSOController.cs

138 lines
5.1 KiB
C#

using Microsoft.AspNetCore.Mvc;
using System.ComponentModel.DataAnnotations;
using System.Security.Cryptography;
using Zxd.Crm.Domain.Dto;
using Zxd.Crm.Domain.Impl;
using static Zxd.Crm.Domain.SSOEmployeeDomain;
namespace Zxd.Crm.WebApi.Controllers
{
[ApiSignatureFilterForbid]
public class SSOController : BaseController
{
private readonly ISSOEmployeeDomain _sourceDomain;
public SSOController(ISSOEmployeeDomain sourceDomain)
{
_sourceDomain = sourceDomain;
}
/// <summary>
/// 通过eid获取事业部名称
/// </summary>
/// <param name="activeModel"></param>
/// <returns></returns>
[HttpGet("GetDeptNameByEid")]
public async Task<List<DeptMentReturnModel>> GetDeptNameByEid(string? eidList)
{
var res = await _sourceDomain.GetDeptmentByEid(eidList);
return res;
}
/// <summary>
/// 获取通过坐席id获取对应坐席员工的产品授权情况
/// </summary>
[HttpGet("GetEmpowerment")]
public async Task<PageResult<GetEmpowermentDto>> GetEmpowerment([FromQuery] GetEmpowermentByAppidDto dto)
{
var res = await _sourceDomain.GetEmpowerment(dto);
return res;
}
[HttpGet("RemoveEidCache")]
public async Task<bool> RemoveEidCache(string? activeModel)
{
var res = await _sourceDomain.RemoveEidCache(activeModel);
return res;
}
/// <summary>
/// 中心点 添加【授权情况】,和更新【授权日志】
/// </summary>
[HttpPost("SetEmpowerment")]
public async Task<ApiResult<bool>> SetEmpowerment(SetEmpowermentDto dto)
{
var res = await _sourceDomain.SetEmpowerment(dto);
return res;
}
[HttpGet("Async")]
public async Task AsyncEmplyeeData([Required] string eid)
{
await _sourceDomain.AsyncEmplyeeData(eid);
}
/// <summary>
/// 更新员工与手机绑定账号上次赋权的时间
/// </summary>
[HttpPost("UpdateLastEmpowerTime")]
public async Task<ApiResult<string>> UpdateLastEmpowerTime(UpdateLastEmpowerTime dto)
{
var res = await _sourceDomain.UpdateLastEmpowerTime(dto.residString, dto.timestamp != null ? dto.timestamp : null);
return res;
}
/// <summary>
/// 更新员工手机绑定的软件用户名
/// </summary>
[HttpPost("UpdateAppusername")]
public async Task<ApiResult<string>> UpdateAppusername(List<Appuser> UpdateAppusernameList)
{
var res = await _sourceDomain.UpdateAppusername(UpdateAppusernameList);
return res;
}
/// <summary>
/// 通过员工id获取软件用户名
/// </summary>
/// <param name="eid">员工id</param>
///
/// <returns></returns>
[HttpGet("GetAppuserByEid")]
public async Task<ApiResult<List<string>>> GetAppuserByEid(int eid)
{
var res = await _sourceDomain.GetAppuserByEid(eid);
return res;
}
/// <summary>
/// 增加员工软件用户的绑定数据
/// </summary>
/// <param name="to_by_eid">被操作员工id</param>
/// <param name="resid">资源id</param>
/// <param name="show_phone">脱敏后电话</param>
/// <param name="type">操作类型 bind: 绑定或更新 unbind 解绑</param>
/// <param name="from_by_eid">操作员工id</param>
/// <param name="is_main">是否为主账号</param>
///
/// <returns></returns>
[HttpPost("AddSoftEmployeeBind")]
public async Task<ApiResult<bool>> AddSoftEmployeeBind(SoftEmployeeBindChangeDto data)
{
return await _sourceDomain.AddSoftEmployeeBind(data.to_by_eid, data.resid, data.show_phone, data.from_by_eid);
}
/// <summary>
/// 解绑员工软件用户的绑定数据
/// </summary>
/// <param name="to_by_eid">被操作员工id</param>
/// <param name="resid">资源id</param>
/// <param name="show_phone">脱敏后电话</param>
/// <param name="from_by_eid">操作员工id</param>
/// <param name="is_main">是否为主账号</param>
///
/// <returns></returns>
[HttpPost("DeleteSoftEmployeeBind")]
public async Task<ApiResult<bool>> DeleteSoftEmployeeBind(SoftEmployeeBindChangeDto data)
{
return await _sourceDomain.DeleteSoftEmployeeBind(data.to_by_eid, data.resid, data.show_phone, data.from_by_eid);
}
///// <summary>
///// 记录员工软件用户字典
///// </summary>
/////
///// <returns></returns>
//[HttpPost("SetEmployeeSoftDict")]
//public async Task<ApiResult<bool>> SetEmployeeSoftDict(EMPLOYEE_SOFT_DICT data)
//{
// return await _sourceDomain.SetEmployeeSoftDict(data);
//}
}
}