ComplianceServer/code/Hg.Core.WebApi/Controllers/OutComplaintController.cs

212 lines
6.3 KiB
C#

using Hg.Core.Domain.Dto.OutComplaint;
using Hg.Core.Domain.Impl;
using Microsoft.AspNetCore.Mvc;
namespace Hg.Core.WebApi.Controllers
{
[ApiSignatureFilterForbid]
public class OutComplaintController : BaseController
{
private readonly IOutComplaintDomain _outComplaintDomain;
private readonly ICacheDomain _cacheDomain;
public OutComplaintController(IOutComplaintDomain outComplaintDomain, ICacheDomain cacheDomain)
{
_outComplaintDomain = outComplaintDomain;
_cacheDomain = cacheDomain;
}
/// <summary>
/// 获取外诉数据
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[HttpGet]
public async Task<OutComplaintDto> GetOutComplanit(int id)
{
return await _outComplaintDomain.GetOutComplaint(id);
}
/// <summary>
/// 外诉分页
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
[HttpGet("page")]
public async Task<PageResult<OutComplaintDto>> GetOutComplaintPage([FromQuery] SearchOutComplaintDto dto)
{
return await _outComplaintDomain.GetOutComplaintPage(dto);
}
/// <summary>
/// 创建外诉
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
[HttpPost]
public async Task<bool> CreateOutComplaint([FromBody] CreateOutComplaintDto dto)
{
Log.Information("CreateOutComplaint-卧槽");
return await _outComplaintDomain.CreateOutComplaint(dto);
}
/// <summary>
/// 修改外诉
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
[HttpPost("update")]
public async Task<bool> UpdateOutComplaint([FromBody] UpdateOutComplaintDto dto)
{
return await _outComplaintDomain.UpdateOutComplaint(dto);
}
/// <summary>
/// 创建外诉跟进
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
[HttpPost("followUp")]
public async Task<bool> CreateOutComlpaintFollowUp([FromBody] CreateOutComplaintFollowUpDto dto)
{
return await _outComplaintDomain.CreateOutComlpaintFollowUp(dto);
}
/// <summary>
/// 更新外诉跟进
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
[HttpPost("UpdateFollowUp")]
public async Task<bool> UpdateOutComlpaintFollowUp([FromBody] CreateOutComplaintFollowUpDto dto)
{
return await _outComplaintDomain.UpdateOutComlpaintFollowUp(dto);
}
/// <summary>
/// 获取用户信息
/// </summary>
/// <param name="resid"></param>
/// <returns></returns>
[HttpGet("customerInfo")]
public async Task<ComplaintCustomerInfoDto> GetComplaintCustomerInfo(string? resid)
{
return await _outComplaintDomain.GetComplaintCustomerInfo(resid);
}
/// <summary>
/// 获取跟进记录
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[HttpGet("FollowUp")]
public async Task<OutComplaintFollowUpDto> GetOutComlpaintFollowUp(int? id)
{
return await _outComplaintDomain.GetOutComplaintFollowUp(id);
}
/// <summary>
/// 创建回复记录
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
[HttpPost("Restore")]
public async Task<bool> CreateOutComplaintRestore([FromBody] CreateOutComplaintRestoreDto dto)
{
return await _outComplaintDomain.CreateOutComplaintRestore(dto);
}
/// <summary>
/// 更新外诉状态
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
[HttpPost("Status")]
public async Task<bool> UpdateOutComplaintStatus([FromBody] UpdateOutComplaintStatusDto dto)
{
return await _outComplaintDomain.UpdateOutComplaintStatus(dto);
}
/// <summary>
/// 获取回复记录信息
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[HttpGet("Restore")]
public async Task<OutComplaintRestoreDto> GetOutComplaintRestoreInfo(int id)
{
return await _outComplaintDomain.GetOutComplaintRestoreInfo(id);
}
/// <summary>
/// 获取客户内外诉标签
/// </summary>
/// <param name="resId"></param>
/// <returns></returns>
[HttpGet("ComplaintLabel")]
public async Task<ComplaintLabelDto> ComplaintLabel(string resId)
{
return await _outComplaintDomain.ComplaintLabel(resId);
}
/// <summary>
/// 测试日期
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[HttpGet("testday")]
public async Task<DateTime> TestDay(DateTime time)
{
var a = await _cacheDomain.GetWorkDays(DateTime.Now, time);
var b = await _cacheDomain.GetWorkHours(DateTime.Now, time);
var c = await _cacheDomain.AddWorkDays(time, 1);
return await _cacheDomain.AddWorkDays(time, 7);
}
/// <summary>
/// 数据导入
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
[HttpPost("Import")]
public async Task<bool> Import([FromBody] List<OutComplaintImportDto> dtos)
{
return await _outComplaintDomain.Import(dtos);
}
/// <summary>
/// 数据导入
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
[HttpPost("UpdateEid")]
public async Task<bool> UpdateEid()
{
return await _outComplaintDomain.UpdateEid();
}
/// <summary>
/// 获取当前日期是否工作日
/// </summary>
/// <param name="dateTime"></param>
/// <returns></returns>
[HttpGet("WorkDay")]
public async Task<bool> IsWorkDay(DateTime dateTime)
{
return await _cacheDomain.IsWorkDay(dateTime);
}
}
}