|
@@ -12,7 +12,9 @@ using MapsterMapper;
|
|
using Microsoft.AspNetCore.Authorization;
|
|
using Microsoft.AspNetCore.Authorization;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using Microsoft.Extensions.Options;
|
|
using Microsoft.Extensions.Options;
|
|
|
|
+using Microsoft.VisualBasic;
|
|
using SqlSugar;
|
|
using SqlSugar;
|
|
|
|
+using System.Text;
|
|
using XF.Domain.Repository;
|
|
using XF.Domain.Repository;
|
|
|
|
|
|
namespace Hotline.Api.Controllers
|
|
namespace Hotline.Api.Controllers
|
|
@@ -55,7 +57,7 @@ namespace Hotline.Api.Controllers
|
|
{
|
|
{
|
|
Provinces = Provinces.Trim();
|
|
Provinces = Provinces.Trim();
|
|
string[] provinceNos = Provinces.Split(',');
|
|
string[] provinceNos = Provinces.Split(',');
|
|
- for (int i = 0; i < provinceNos.Length; i++)
|
|
|
|
|
|
+ for (int i = 0;i < provinceNos.Length;i++)
|
|
{
|
|
{
|
|
provinceNos[i] = provinceNos[i].Trim();
|
|
provinceNos[i] = provinceNos[i].Trim();
|
|
}
|
|
}
|
|
@@ -84,7 +86,7 @@ namespace Hotline.Api.Controllers
|
|
{
|
|
{
|
|
Provinces = Provinces.Trim();
|
|
Provinces = Provinces.Trim();
|
|
string[] provinceNos = Provinces.Split(',');
|
|
string[] provinceNos = Provinces.Split(',');
|
|
- for (int i = 0; i < provinceNos.Length; i++)
|
|
|
|
|
|
+ for (int i = 0;i < provinceNos.Length;i++)
|
|
{
|
|
{
|
|
provinceNos[i] = provinceNos[i].Trim();
|
|
provinceNos[i] = provinceNos[i].Trim();
|
|
}
|
|
}
|
|
@@ -135,7 +137,7 @@ namespace Hotline.Api.Controllers
|
|
{
|
|
{
|
|
Provinces = Provinces.Trim();
|
|
Provinces = Provinces.Trim();
|
|
string[] provinceNos = Provinces.Split(',');
|
|
string[] provinceNos = Provinces.Split(',');
|
|
- for (int i = 0; i < provinceNos.Length; i++)
|
|
|
|
|
|
+ for (int i = 0;i < provinceNos.Length;i++)
|
|
{
|
|
{
|
|
provinceNos[i] = provinceNos[i].Trim();
|
|
provinceNos[i] = provinceNos[i].Trim();
|
|
}
|
|
}
|
|
@@ -182,6 +184,46 @@ namespace Hotline.Api.Controllers
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 根据省编号重新执行工单和通话记录关联并推送省上
|
|
|
|
+ /// </summary>
|
|
|
|
+ /// <returns></returns>
|
|
|
|
+ [HttpPost("OrderRelateCallHandler")]
|
|
|
|
+ [AllowAnonymous]
|
|
|
|
+ public async Task<dynamic> OrderRelateCallHandlerAsync([FromBody] string provinces)
|
|
|
|
+ {
|
|
|
|
+ provinces = provinces.Trim();
|
|
|
|
+ var provinceNos = provinces.Split(',');
|
|
|
|
+ for (int i = 0;i < provinceNos.Length;i++)
|
|
|
|
+ {
|
|
|
|
+ provinceNos[i] = provinceNos[i].Trim();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ var orders = await _orderRepository.Queryable()
|
|
|
|
+ .Where(d => provinceNos.Contains(d.ProvinceNo))
|
|
|
|
+ .Select(d => new { d.Id, d.ProvinceNo })
|
|
|
|
+ .ToListAsync(HttpContext.RequestAborted);
|
|
|
|
|
|
|
|
+ dynamic sb = new System.Dynamic.ExpandoObject();
|
|
|
|
+ var sbs = new List<dynamic>();
|
|
|
|
+ foreach (var order in orders)
|
|
|
|
+ {
|
|
|
|
+ sb.OrderId = order.Id;
|
|
|
|
+ sb.ProvinceNo = order.ProvinceNo;
|
|
|
|
+ try
|
|
|
|
+ {
|
|
|
|
+ sb.Message = await _callApplication.OrderRelateCallHandlerAsync(order.Id, HttpContext.RequestAborted);
|
|
|
|
+ }
|
|
|
|
+ catch (ArgumentException e)
|
|
|
|
+ {
|
|
|
|
+ sb.Message = e.Message;
|
|
|
|
+ }
|
|
|
|
+ finally
|
|
|
|
+ {
|
|
|
|
+ sbs.Add(sb);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return sbs;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|