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 SyncOrganizationsAsync(); /// /// 获取职位数据 /// /// [Get("/api/sync/positions")] Task GetPositionsAsync(); /// /// 差旅数据处理 /// /// /// [Post("/api/sync/businessTrips")] [RequestContentHandler(typeof(CodeContentHandler))] Task HandlerBusinessTripsAsync(string code); /// /// 外包自动离职处理 /// /// [Post("/api/gainfoOutsource/autoResign")] Task OutsourceAutoResignAsync(); /// /// 外部人员自动离职处理 /// /// [Post("/api/appointments/autoResign")] Task ExternalAutoResignAsync(); }