Files
jinko.yikatong/Src/Dlhis.Basic.Api/ISyncApi.cs
2025-04-15 14:46:29 +08:00

45 lines
1.3 KiB
C#

using Dlhis.Basic.Api.ClientHandler;
using Dlhis.Basic.Api.ContentHandlers;
using Dlhis.Basic.Api.Response;
using Kurisu.RemoteCall.Attributes;
namespace Dlhis.Basic.Api;
[RequestResultHandler]
[EnableRemoteClient(Name = "longRun-service", BaseUrl = "${InternalRequest:BasicRequestUrl}", PolicyHandler = typeof(LongRunClientHandler))]
public interface ISyncApi
{
[Post("/api/sync/gainfo/werk")]
[RequestContentHandler(typeof(CodeContentHandler))]
Task SyncGainfoByWerkAsync(string code);
[Post("/api/sync/gainfo/user")]
[RequestContentHandler(typeof(CodeContentHandler))]
Task SyncGainfoByUserCodeAsync(string code);
[Get("/api/sync/orgs")]
Task<SapOrganizationResponse> SyncOrganizationsAsync();
[Get("/api/sync/positions")]
Task<SapPositionResponse> GetPositionsAsync();
[Post("/api/sync/businessTrips")]
[RequestContentHandler(typeof(CodeContentHandler))]
Task HandlerBusinessTripsAsync(string code);
/// <summary>
/// 外包自动离职处理
/// </summary>
/// <returns></returns>
[Post("/api/gainfoOutsource/autoResign")]
Task OutsourceAutoResignAsync();
/// <summary>
/// 外部人员自动离职处理
/// </summary>
/// <returns></returns>
[Post("/api/appointments/autoResign")]
Task ExternalAutoResignAsync();
}