212 lines
6.3 KiB
C#
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);
|
|
}
|
|
|
|
}
|
|
}
|