|
@@ -30,6 +30,7 @@ using Newtonsoft.Json;
|
|
|
using Hotline.Share.Dtos.FlowEngine.Workflow;
|
|
|
using SqlSugar;
|
|
|
using Hotline.SeedData;
|
|
|
+using Hotline.Share.Tools;
|
|
|
|
|
|
namespace Hotline.Application.FlowEngine;
|
|
|
|
|
@@ -875,7 +876,7 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
|
NextStepOption nextStepOption;
|
|
|
|
|
|
//汇总节点只能选择对应节点办理对象
|
|
|
- if (workflow.FlowType is EFlowType.Handle
|
|
|
+ if (workflow.FlowType is EFlowType.Handle
|
|
|
&& stepDefine.StepType is EStepType.Summary
|
|
|
&& stepDefine.BusinessType is EBusinessType.Seat or EBusinessType.Send)
|
|
|
{
|
|
@@ -1741,11 +1742,22 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
|
.InnerJoin<Order>((c, w, o) => w.ExternalId == o.Id)
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Title), (c, w, o) => o.Title.Contains(dto.Title))
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.OrderNo), (c, w, o) => o.No == dto.OrderNo)
|
|
|
- .WhereIF(!string.IsNullOrEmpty(dto.AcceptType), (c, w, o) => o.AcceptTypeCode == dto.AcceptType)//受理类型
|
|
|
- .WhereIF(!string.IsNullOrEmpty(dto.Channel), (c, w, o) => o.SourceChannelCode == dto.Channel)//受理类型
|
|
|
+ .WhereIF(!string.IsNullOrEmpty(dto.AcceptType), (c, w, o) => o.AcceptTypeCode == dto.AcceptType) //受理类型
|
|
|
+ .WhereIF(!string.IsNullOrEmpty(dto.Channel), (c, w, o) => o.SourceChannelCode == dto.Channel) //来源渠道
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Hotspot), (c, w, o) => o.HotspotSpliceName != null && o.HotspotSpliceName.Contains(dto.Hotspot))//热点类型
|
|
|
- .WhereIF(!string.IsNullOrEmpty(dto.OrgId), (c, w, o) => c.FinisherOrgId == dto.OrgId) //接办部门
|
|
|
- .WhereIF(dto.CounterSignType != null, (c, w, o) => c.CounterSignType == dto.CounterSignType) //会签类型
|
|
|
+ .WhereIF(!string.IsNullOrEmpty(dto.OrgId), (c, w, o) => c.FinisherOrgId == dto.OrgId) //接办部门
|
|
|
+ .WhereIF(dto.CounterSignType != null, (c, w, o) => c.CounterSignType == dto.CounterSignType) //会签类型
|
|
|
+
|
|
|
+ .WhereIF(!string.IsNullOrEmpty(dto.FromPhone), (c, w, o) => o.FromPhone.Contains(dto.FromPhone) || o.Contact.Contains(dto.FromPhone)) //来电号码、联系电话
|
|
|
+ .WhereIF(!string.IsNullOrEmpty(dto.StarterName), (c, w, o) => c.StarterName.Contains(dto.StarterName)) //发起人
|
|
|
+ .WhereIF(!string.IsNullOrEmpty(dto.StarterOrgName), (c, w, o) => c.StarterOrgName.Contains(dto.StarterOrgName)) //发起部门
|
|
|
+ .WhereIF(dto.Status.HasValue, (c, w, o) => c.Order.Status == dto.Status) //工单状态
|
|
|
+ .WhereIF(dto.InitiationTimeStart.HasValue, (c, w, o) => c.CreationTime >= dto.InitiationTimeStart) //发起时间开始
|
|
|
+ .WhereIF(dto.InitiationTimeEnd.HasValue, (c, w, o) => c.CreationTime <= dto.InitiationTimeEnd) //发起时间结束
|
|
|
+ .WhereIF(dto.CreationTimeStart.HasValue, (c, w, o) => o.CreationTime >= dto.CreationTimeStart) //受理时间开始
|
|
|
+ .WhereIF(dto.CreationTimeEnd.HasValue, (c, w, o) => o.CreationTime <= dto.CreationTimeEnd) //受理时间结束
|
|
|
+ .WhereIF(dto.ExpiredStatus.HasValue && dto.ExpiredStatus == true, (c, w, o) => o.ExpiredTime >= o.FiledTime) //超期true
|
|
|
+ .WhereIF(dto.ExpiredStatus.HasValue && dto.ExpiredStatus == false, (c, w, o) => o.ExpiredTime <= o.FiledTime) //超期false
|
|
|
;
|
|
|
|
|
|
var rolePaiDan = _systemSettingCacheManager.GetSetting(SettingConstants.RolePaiDan)?.SettingValue[0];//派单员角色
|