|
@@ -58,25 +58,23 @@ public class OrderController : BaseController
|
|
public async Task<PagedDto<OrderDto>> Query([FromQuery] QueryOrderDto dto)
|
|
public async Task<PagedDto<OrderDto>> Query([FromQuery] QueryOrderDto dto)
|
|
{
|
|
{
|
|
var (total, items) = await _orderRepository.Queryable()
|
|
var (total, items) = await _orderRepository.Queryable()
|
|
- //.Includes(d => d.Employee)
|
|
|
|
- //.Includes(d => d.Workflow, d => d.Assigns)
|
|
|
|
.Where(d => d.Workflows.Any(x => x.ModuleCode == WorkflowModuleConsts.OrderManage))
|
|
.Where(d => d.Workflows.Any(x => x.ModuleCode == WorkflowModuleConsts.OrderManage))
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Keyword), d => d.Title.Contains(dto.Keyword) || d.No.Contains(dto.Keyword))
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Keyword), d => d.Title.Contains(dto.Keyword) || d.No.Contains(dto.Keyword))
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Content), d => d.Content.Contains(dto.Content))
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Content), d => d.Content.Contains(dto.Content))
|
|
- .WhereIF(dto.AcceptType.HasValue, d => d.AcceptType == dto.AcceptType)
|
|
|
|
- .WhereIF(dto.Channel.HasValue, d => d.Channel == dto.Channel)
|
|
|
|
- .WhereIF(!string.IsNullOrEmpty(dto.HotspotId), d => d.HotspotId == dto.HotspotId)
|
|
|
|
|
|
+ .WhereIF(dto.AcceptTypes.Any(), d => dto.AcceptTypes.Contains(d.AcceptType))
|
|
|
|
+ .WhereIF(dto.Channels.Any(), d => dto.Channels.Contains(d.Channel))
|
|
|
|
+ .WhereIF(dto.HotspotIds.Any(), d => dto.HotspotIds.Contains(d.HotspotId))
|
|
.WhereIF(!string.IsNullOrEmpty(dto.TransferPhone), d => d.TransferPhone.Contains(dto.TransferPhone))
|
|
.WhereIF(!string.IsNullOrEmpty(dto.TransferPhone), d => d.TransferPhone.Contains(dto.TransferPhone))
|
|
- .WhereIF(!string.IsNullOrEmpty(dto.OrgCode), d => d.Workflows.Any(x => x.Assigns.Any(s => s.OrgCode == dto.OrgCode)))
|
|
|
|
|
|
+ .WhereIF(dto.OrgCodes.Any(), d => d.Workflows.Any(x => x.Assigns.Any(s => dto.OrgCodes.Contains(s.OrgCode))))
|
|
.WhereIF(!string.IsNullOrEmpty(dto.NameOrNo), d => d.Employee.Name.Contains(dto.NameOrNo) || d.Employee.StaffNo.Contains(dto.NameOrNo))
|
|
.WhereIF(!string.IsNullOrEmpty(dto.NameOrNo), d => d.Employee.Name.Contains(dto.NameOrNo) || d.Employee.StaffNo.Contains(dto.NameOrNo))
|
|
.WhereIF(dto.CreationTimeStart.HasValue, d => d.CreationTime >= dto.CreationTimeStart)
|
|
.WhereIF(dto.CreationTimeStart.HasValue, d => d.CreationTime >= dto.CreationTimeStart)
|
|
.WhereIF(dto.CreationTimeEnd.HasValue, d => d.CreationTime <= dto.CreationTimeEnd)
|
|
.WhereIF(dto.CreationTimeEnd.HasValue, d => d.CreationTime <= dto.CreationTimeEnd)
|
|
- .WhereIF(dto.EmergencyLevel.HasValue, d => d.EmergencyLevel == dto.EmergencyLevel)
|
|
|
|
|
|
+ .WhereIF(dto.EmergencyLevels.Any(), d => dto.EmergencyLevels.Contains(d.EmergencyLevel))
|
|
.WhereIF(!string.IsNullOrEmpty(dto.PhoneNo), d => d.FromPhone.Contains(dto.PhoneNo) || d.Contact.Contains(dto.PhoneNo))
|
|
.WhereIF(!string.IsNullOrEmpty(dto.PhoneNo), d => d.FromPhone.Contains(dto.PhoneNo) || d.Contact.Contains(dto.PhoneNo))
|
|
.WhereIF(dto.PushType.HasValue, d => d.PushType == dto.PushType)
|
|
.WhereIF(dto.PushType.HasValue, d => d.PushType == dto.PushType)
|
|
.WhereIF(dto.ExpiredTimeStart.HasValue, d => d.ExpiredTime >= dto.ExpiredTimeStart)
|
|
.WhereIF(dto.ExpiredTimeStart.HasValue, d => d.ExpiredTime >= dto.ExpiredTimeStart)
|
|
.WhereIF(dto.ExpiredTimeEnd.HasValue, d => d.ExpiredTime <= dto.ExpiredTimeEnd)
|
|
.WhereIF(dto.ExpiredTimeEnd.HasValue, d => d.ExpiredTime <= dto.ExpiredTimeEnd)
|
|
- .WhereIF(dto.Status.HasValue, d => d.Status == dto.Status)
|
|
|
|
|
|
+ .WhereIF(dto.Statuses.Any(), d => dto.Statuses.Contains(d.Status))
|
|
.ToPagedListAsync(dto.PageIndex, dto.PageSize, HttpContext.RequestAborted);
|
|
.ToPagedListAsync(dto.PageIndex, dto.PageSize, HttpContext.RequestAborted);
|
|
|
|
|
|
return new PagedDto<OrderDto>(total, _mapper.Map<IReadOnlyList<OrderDto>>(items));
|
|
return new PagedDto<OrderDto>(total, _mapper.Map<IReadOnlyList<OrderDto>>(items));
|
|
@@ -95,6 +93,11 @@ public class OrderController : BaseController
|
|
return new PagedDto<OrderDto>(total, _mapper.Map<IReadOnlyList<OrderDto>>(items));
|
|
return new PagedDto<OrderDto>(total, _mapper.Map<IReadOnlyList<OrderDto>>(items));
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 查询工单详情
|
|
|
|
+ /// </summary>
|
|
|
|
+ /// <param name="id"></param>
|
|
|
|
+ /// <returns></returns>
|
|
[HttpGet("{id}")]
|
|
[HttpGet("{id}")]
|
|
public async Task<OrderDto> Get(string id)
|
|
public async Task<OrderDto> Get(string id)
|
|
{
|
|
{
|
|
@@ -131,6 +134,11 @@ public class OrderController : BaseController
|
|
await _orderRepository.RemoveAsync(order);
|
|
await _orderRepository.RemoveAsync(order);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 更新工单信息
|
|
|
|
+ /// </summary>
|
|
|
|
+ /// <param name="dto"></param>
|
|
|
|
+ /// <returns></returns>
|
|
[HttpPut]
|
|
[HttpPut]
|
|
public async Task Update([FromBody] UpdateOrderDto dto)
|
|
public async Task Update([FromBody] UpdateOrderDto dto)
|
|
{
|
|
{
|
|
@@ -176,15 +184,12 @@ public class OrderController : BaseController
|
|
/// </summary>
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
/// <returns></returns>
|
|
[HttpGet("base-data")]
|
|
[HttpGet("base-data")]
|
|
- public async Task<object> BaseData()
|
|
|
|
|
|
+ public dynamic BaseData()
|
|
{
|
|
{
|
|
- var baseHotspots = await _hotSpotTypeRepository.Queryable().Where(d => string.IsNullOrEmpty(d.ParentId))
|
|
|
|
- .ToListAsync();
|
|
|
|
return new
|
|
return new
|
|
{
|
|
{
|
|
AcceptTypeOptions = EnumExts.GetDescriptions<EAcceptType>(),
|
|
AcceptTypeOptions = EnumExts.GetDescriptions<EAcceptType>(),
|
|
ChannelOptions = EnumExts.GetDescriptions<EChannel>(),
|
|
ChannelOptions = EnumExts.GetDescriptions<EChannel>(),
|
|
- BaseHotspots = baseHotspots.Select(d => new KeyValuePair<string, string>(d.ProvinceCode, d.HotSpotName)).ToList(),
|
|
|
|
OrgsOptions = _organizeRepository.GetOrgJson(),
|
|
OrgsOptions = _organizeRepository.GetOrgJson(),
|
|
EmergencyLevelOptions = EnumExts.GetDescriptions<EEmergencyLevel>(),
|
|
EmergencyLevelOptions = EnumExts.GetDescriptions<EEmergencyLevel>(),
|
|
PushTypeOptions = EnumExts.GetDescriptions<EPushType>(),
|
|
PushTypeOptions = EnumExts.GetDescriptions<EPushType>(),
|
|
@@ -193,14 +198,12 @@ public class OrderController : BaseController
|
|
}
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
- /// 新增页面
|
|
|
|
|
|
+ /// 新增页面基础数据
|
|
/// </summary>
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
/// <returns></returns>
|
|
[HttpGet("base-data-add")]
|
|
[HttpGet("base-data-add")]
|
|
- public async Task<object> BaseDataAdd()
|
|
|
|
|
|
+ public dynamic BaseDataAdd()
|
|
{
|
|
{
|
|
- var baseHotspots = await _hotSpotTypeRepository.Queryable().Where(d => string.IsNullOrEmpty(d.ParentId))
|
|
|
|
- .ToListAsync();
|
|
|
|
return new
|
|
return new
|
|
{
|
|
{
|
|
ChannelOptions = EnumExts.GetDescriptions<EChannel>(),
|
|
ChannelOptions = EnumExts.GetDescriptions<EChannel>(),
|
|
@@ -211,13 +214,13 @@ public class OrderController : BaseController
|
|
OrderTypeOptions = EnumExts.GetDescriptions<EOrderType>(),
|
|
OrderTypeOptions = EnumExts.GetDescriptions<EOrderType>(),
|
|
AcceptTypeOptions = EnumExts.GetDescriptions<EAcceptType>(),
|
|
AcceptTypeOptions = EnumExts.GetDescriptions<EAcceptType>(),
|
|
EmergencyLevelOptions = EnumExts.GetDescriptions<EEmergencyLevel>(),
|
|
EmergencyLevelOptions = EnumExts.GetDescriptions<EEmergencyLevel>(),
|
|
- BaseHotspots = baseHotspots.Select(d => new KeyValuePair<string, string>(d.ProvinceCode, d.HotSpotName)).ToList(),
|
|
|
|
PushTypeOptions = EnumExts.GetDescriptions<EPushType>(),
|
|
PushTypeOptions = EnumExts.GetDescriptions<EPushType>(),
|
|
|
|
+ //todo 是否重复
|
|
};
|
|
};
|
|
}
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
- /// 扩展信息新增页面
|
|
|
|
|
|
+ /// 扩展信息新增页面基础数据
|
|
/// </summary>
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
/// <returns></returns>
|
|
[HttpGet("base-data-ext")]
|
|
[HttpGet("base-data-ext")]
|
|
@@ -227,6 +230,7 @@ public class OrderController : BaseController
|
|
return new
|
|
return new
|
|
{
|
|
{
|
|
//LicenceTypeOptions = SysDicTypeConsts.LicenceType,
|
|
//LicenceTypeOptions = SysDicTypeConsts.LicenceType,
|
|
|
|
+ ComplainTypeOptions = EnumExts.GetDescriptions<EComplainType>()
|
|
};
|
|
};
|
|
}
|
|
}
|
|
|
|
|