55 lines
1.7 KiB
C#
55 lines
1.7 KiB
C#
using Dlhis.Basic.Organization.Request;
|
|
using Dlhis.Basic.Organization.Services;
|
|
using Dlhis.Jip.Api.Responses;
|
|
using Microsoft.AspNetCore.Authorization;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
|
namespace Dlhis.Basic.Organization.Controllers;
|
|
|
|
[AllowAnonymous]
|
|
[ApiController]
|
|
[Route("/api/[controller]")]
|
|
public class SyncController : ControllerBase
|
|
{
|
|
private readonly IGainfoUpdateService _gainfoUpdateService;
|
|
private readonly IJinkoSapService _jinkoSapService;
|
|
private readonly ISapBusinessTripService _sapBusinessTripService;
|
|
|
|
public SyncController(IGainfoUpdateService gainfoUpdateService, IJinkoSapService jinkoSapService, ISapBusinessTripService sapBusinessTripService)
|
|
{
|
|
_gainfoUpdateService = gainfoUpdateService;
|
|
_jinkoSapService = jinkoSapService;
|
|
_sapBusinessTripService = sapBusinessTripService;
|
|
}
|
|
|
|
[HttpPost("/api/sync/gainfo/werk")]
|
|
public async Task TodoByWerkAsync(CodeRequest request)
|
|
{
|
|
await _gainfoUpdateService.TodoByWerkAsync(request.Code);
|
|
}
|
|
|
|
[HttpPost("/api/sync/gainfo/user")]
|
|
public async Task TodoByCodeAsync(CodeRequest request)
|
|
{
|
|
await _gainfoUpdateService.TodoByCodeAsync(request.Code);
|
|
}
|
|
|
|
|
|
[HttpGet("/api/sync/orgs")]
|
|
public async Task<SapOrganizationResponse> GetOrgsSync()
|
|
{
|
|
return await _jinkoSapService.GetSapOrganizationsAsync();
|
|
}
|
|
|
|
[HttpGet("/api/sync/positions")]
|
|
public async Task<SapPositionResponse> GetPositionsAsync()
|
|
{
|
|
return await _jinkoSapService.GetPositionsAsync();
|
|
}
|
|
|
|
[HttpPost("/api/sync/businessTrips")]
|
|
public async Task GetPositionsAsync(CodeRequest request)
|
|
{
|
|
await _sapBusinessTripService.HandlerBusinessTripsByFactoryAsync(request.Code);
|
|
}
|
|
} |