|
@@ -2462,7 +2462,20 @@ public class OrderController : BaseController
|
|
dto.CanHandle = result.CanHandle;
|
|
dto.CanHandle = result.CanHandle;
|
|
dto.CanPrevious = result.CanPrevious;
|
|
dto.CanPrevious = result.CanPrevious;
|
|
dto.CanInsteadHandle = !dto.CanHandle && canInsteadHandle;
|
|
dto.CanInsteadHandle = !dto.CanHandle && canInsteadHandle;
|
|
- dto.PreviousOpinion = result.previousOpinion;
|
|
|
|
|
|
+ if (result.Trace is not null)
|
|
|
|
+ {
|
|
|
|
+ dto.PreviousOpinion = result.Trace!.Opinion;
|
|
|
|
+ var sendBack = await _orderSendBackAuditRepository.Queryable().Where(x => x.OrderId == dto.Id && x.TraceId == result.Trace.Id).OrderByDescending(x => x.CreationTime).FirstAsync();
|
|
|
|
+ if (sendBack is { Id: not null })
|
|
|
|
+ {
|
|
|
|
+ dto.SendBackOpinion = !string.IsNullOrEmpty(sendBack.Content) ? sendBack.Content : string.Empty;
|
|
|
|
+ if (sendBack.State == ESendBackAuditState.Refuse)
|
|
|
|
+ {
|
|
|
|
+ dto.SendBackRefuseOpinion = sendBack.AuditContent;
|
|
|
|
+ dto.SendBackAuditTime = sendBack.AuditTime;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
|
|
await _mediator.Publish(new GetOrderDetailNotify(result.Workflow,
|
|
await _mediator.Publish(new GetOrderDetailNotify(result.Workflow,
|
|
_sessionContext.RequiredUserId, _sessionContext.UserName,
|
|
_sessionContext.RequiredUserId, _sessionContext.UserName,
|
|
@@ -2543,8 +2556,6 @@ public class OrderController : BaseController
|
|
cancellationToken: HttpContext.RequestAborted);
|
|
cancellationToken: HttpContext.RequestAborted);
|
|
var centerOpinion = workflow.Steps.Where(x => x.HandlerOrgId == OrgSeedData.CenterId).OrderByDescending(x => x.CreationTime).Select(x => x.Opinion).First();
|
|
var centerOpinion = workflow.Steps.Where(x => x.HandlerOrgId == OrgSeedData.CenterId).OrderByDescending(x => x.CreationTime).Select(x => x.Opinion).First();
|
|
dto.CenterOpinion = string.IsNullOrEmpty(centerOpinion) ? string.Empty : centerOpinion;
|
|
dto.CenterOpinion = string.IsNullOrEmpty(centerOpinion) ? string.Empty : centerOpinion;
|
|
- var sendBack = await _orderSendBackAuditRepository.Queryable().Where(x => x.OrderId == dto.Id).OrderByDescending(x => x.CreationTime).FirstAsync();
|
|
|
|
- dto.SendBackOpinion = sendBack is { Id: not null } && !string.IsNullOrEmpty(sendBack.Content) ? sendBack.Content : string.Empty;
|
|
|
|
List<OrderRemarksDto> remarks = workflow.Steps.Where(x => !string.IsNullOrEmpty(x.Remark)).Select(x => new OrderRemarksDto { Remark = x.Remark, RemarkTime = x.CreationTime, RemarkUser = x.CreatorName }).ToList();
|
|
List<OrderRemarksDto> remarks = workflow.Steps.Where(x => !string.IsNullOrEmpty(x.Remark)).Select(x => new OrderRemarksDto { Remark = x.Remark, RemarkTime = x.CreationTime, RemarkUser = x.CreatorName }).ToList();
|
|
dto.OrderRemarks = remarks;
|
|
dto.OrderRemarks = remarks;
|
|
}
|
|
}
|
|
@@ -3518,8 +3529,9 @@ public class OrderController : BaseController
|
|
SendBackOrgName = prevStep.HandlerOrgName,//prevStep!.AcceptorOrgName,
|
|
SendBackOrgName = prevStep.HandlerOrgName,//prevStep!.AcceptorOrgName,
|
|
WorkflowOrgId = _sessionContext.RequiredOrgId,
|
|
WorkflowOrgId = _sessionContext.RequiredOrgId,
|
|
WorkflowUserId = _sessionContext.RequiredUserId,
|
|
WorkflowUserId = _sessionContext.RequiredUserId,
|
|
- WorkflowRoleIds = _sessionContext.Roles.ToList()
|
|
|
|
- };
|
|
|
|
|
|
+ WorkflowRoleIds = _sessionContext.Roles.ToList(),
|
|
|
|
+ TraceId = currentStep.Id
|
|
|
|
+ };
|
|
await _orderSendBackAuditRepository.AddAsync(audit, HttpContext.RequestAborted);
|
|
await _orderSendBackAuditRepository.AddAsync(audit, HttpContext.RequestAborted);
|
|
}
|
|
}
|
|
else
|
|
else
|
|
@@ -3576,7 +3588,6 @@ public class OrderController : BaseController
|
|
await _orderRepository.Updateable().SetColumns(o => new Orders.Order() { ProcessType = processType })
|
|
await _orderRepository.Updateable().SetColumns(o => new Orders.Order() { ProcessType = processType })
|
|
.Where(o => o.Id == sendBack.OrderId).ExecuteCommandAsync(HttpContext.RequestAborted);
|
|
.Where(o => o.Id == sendBack.OrderId).ExecuteCommandAsync(HttpContext.RequestAborted);
|
|
//发送短信TODO
|
|
//发送短信TODO
|
|
-
|
|
|
|
}
|
|
}
|
|
await _orderSendBackAuditRepository.UpdateAsync(sendBack, HttpContext.RequestAborted);
|
|
await _orderSendBackAuditRepository.UpdateAsync(sendBack, HttpContext.RequestAborted);
|
|
}
|
|
}
|
|
@@ -3635,12 +3646,17 @@ public class OrderController : BaseController
|
|
.Includes(x => x.Order)
|
|
.Includes(x => x.Order)
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Keyword),
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Keyword),
|
|
d => d.Order.Title.Contains(dto.Keyword!) || d.Order.No.Contains(dto.Keyword!))
|
|
d => d.Order.Title.Contains(dto.Keyword!) || d.Order.No.Contains(dto.Keyword!))
|
|
- .WhereIF(dto.CreationTimeStart.HasValue, d => d.CreationTime >= dto.CreationTimeStart)
|
|
|
|
- .WhereIF(dto.CreationTimeEnd.HasValue, d => d.CreationTime <= dto.CreationTimeEnd)
|
|
|
|
|
|
+ .WhereIF(!string.IsNullOrEmpty(dto.Title), d => d.Order.Title.Contains(dto.Title!) )
|
|
|
|
+ .WhereIF(!string.IsNullOrEmpty(dto.No),d => d.Order.No.Contains(dto.No!))
|
|
|
|
+ .WhereIF(!string.IsNullOrEmpty(dto.AcceptTypeCode), d => d.Order.AcceptTypeCode == dto.AcceptTypeCode)
|
|
|
|
+ .WhereIF(!string.IsNullOrEmpty(dto.OrgName), d => d.ApplyOrgName == dto.OrgName)
|
|
|
|
+ .WhereIF(dto.StartTime.HasValue, d => d.CreationTime >= dto.StartTime)
|
|
|
|
+ .WhereIF(dto.EndTime.HasValue, d => d.CreationTime <= dto.EndTime)
|
|
.WhereIF(dto.AuditState == 1, d => d.State == ESendBackAuditState.Apply)
|
|
.WhereIF(dto.AuditState == 1, d => d.State == ESendBackAuditState.Apply)
|
|
.WhereIF(dto.AuditState == 2 && !dto.State.HasValue, d => d.State > ESendBackAuditState.Apply)
|
|
.WhereIF(dto.AuditState == 2 && !dto.State.HasValue, d => d.State > ESendBackAuditState.Apply)
|
|
.WhereIF(dto.AuditState == 2 && dto.State.HasValue, d => d.State == dto.State)
|
|
.WhereIF(dto.AuditState == 2 && dto.State.HasValue, d => d.State == dto.State)
|
|
- .WhereIF(_sessionContext.Roles.Contains("role_sysadmin") == false, x => x.SendBackOrgId == _sessionContext.OrgId);// 123 系统管理员
|
|
|
|
|
|
+ .WhereIF(dto.AuditState == 3 && _sessionContext.RequiredOrgId != OrgSeedData.CenterId, x => x.SendBackOrgId.StartsWith(_sessionContext.OrgId))
|
|
|
|
+ .WhereIF(_sessionContext.Roles.Contains("role_sysadmin") == false && dto.AuditState != 3,x => x.SendBackOrgId == _sessionContext.OrgId);// 123 系统管理员
|
|
|
|
|
|
var (total, items) = await query.OrderByDescending(x => x.CreationTime)
|
|
var (total, items) = await query.OrderByDescending(x => x.CreationTime)
|
|
.ToPagedListAsync(dto.PageIndex, dto.PageSize, HttpContext.RequestAborted);
|
|
.ToPagedListAsync(dto.PageIndex, dto.PageSize, HttpContext.RequestAborted);
|
|
@@ -3661,16 +3677,31 @@ public class OrderController : BaseController
|
|
.FirstAsync(x => x.Id == id);
|
|
.FirstAsync(x => x.Id == id);
|
|
}
|
|
}
|
|
|
|
|
|
- #endregion
|
|
|
|
-
|
|
|
|
- #region 省工单退回
|
|
|
|
-
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
- /// 工单退回列表
|
|
|
|
|
|
+ /// 列表页面基础数据
|
|
/// </summary>
|
|
/// </summary>
|
|
- /// <param name="dto"></param>
|
|
|
|
/// <returns></returns>
|
|
/// <returns></returns>
|
|
- [Permission(EPermission.SendBackOrder)]
|
|
|
|
|
|
+ [HttpGet("order_previous/base-data")]
|
|
|
|
+ public async Task<object> OrderSendBackBaseData()
|
|
|
|
+ {
|
|
|
|
+ var rsp = new
|
|
|
|
+ {
|
|
|
|
+ AcceptTypeOptions = _sysDicDataCacheManager.GetSysDicDataCache(SysDicTypeConsts.AcceptType),
|
|
|
|
+ ESendBackAuditState = EnumExts.GetDescriptions<ESendBackAuditState>(),
|
|
|
|
+ };
|
|
|
|
+ return rsp;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ #endregion
|
|
|
|
+
|
|
|
|
+ #region 省工单退回
|
|
|
|
+
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 工单退回列表
|
|
|
|
+ /// </summary>
|
|
|
|
+ /// <param name="dto"></param>
|
|
|
|
+ /// <returns></returns>
|
|
|
|
+ [Permission(EPermission.SendBackOrder)]
|
|
[HttpGet("send_back")]
|
|
[HttpGet("send_back")]
|
|
public async Task<PagedDto<OrderSendBackDto>> UrgeList([FromQuery] OrderSendBackListDto dto)
|
|
public async Task<PagedDto<OrderSendBackDto>> UrgeList([FromQuery] OrderSendBackListDto dto)
|
|
{
|
|
{
|