|
@@ -950,6 +950,54 @@ public class OrderApplication : IOrderApplication, IScopeDependency
|
|
|
_capPublisher.PublishDelay(expiredTimeConfig.ExpiredTime - DateTime.Now.AddHours(1), EventNames.HotlineOrderAutomaticDelay,
|
|
|
new PublishAutomaticDelayDto() { OrderId = order.Id });
|
|
|
}
|
|
|
+ else if (dto.Workflow.NextHandlers.Any(d => d.Key == cityBase.Province12315.OrgId) && !_appOptions.Value.IsYiBin)
|
|
|
+ {
|
|
|
+ var startTime = DateTime.Now;
|
|
|
+ if (order.CenterToOrgTime.HasValue)
|
|
|
+ {
|
|
|
+ startTime = order.CenterToOrgTime.Value;
|
|
|
+ }
|
|
|
+
|
|
|
+ TimeResult? timeResult;
|
|
|
+ if (_appOptions.Value.IsLuZhou)
|
|
|
+ {
|
|
|
+ timeResult = await _expireTime.CalcEndTime(DateTime.Now, startTime, ETimeType.Day, 60, 80, 50);
|
|
|
+ expiredTimeConfig = new ExpiredTimeWithConfig
|
|
|
+ {
|
|
|
+ Count = 60,
|
|
|
+ TimeType = ETimeType.Day,
|
|
|
+ TimeText = "60个自然日",
|
|
|
+ ExpiredTime = timeResult.EndTime,
|
|
|
+ NearlyExpiredTime = timeResult.NearlyExpiredTime,
|
|
|
+ NearlyExpiredTimeOne = timeResult.NearlyExpiredTimeOne
|
|
|
+ };
|
|
|
+ }
|
|
|
+ else if (_appOptions.Value.IsZiGong)
|
|
|
+ {
|
|
|
+ timeResult = await _expireTime.CalcEndTime(DateTime.Now, startTime, ETimeType.Day, 5, 80, 50);
|
|
|
+ expiredTimeConfig = new ExpiredTimeWithConfig
|
|
|
+ {
|
|
|
+ Count = 5,
|
|
|
+ TimeType = ETimeType.Day,
|
|
|
+ TimeText = "5个自然日",
|
|
|
+ ExpiredTime = timeResult.EndTime,
|
|
|
+ NearlyExpiredTime = timeResult.NearlyExpiredTime,
|
|
|
+ NearlyExpiredTimeOne = timeResult.NearlyExpiredTimeOne
|
|
|
+ };
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ throw new UserFriendlyException("暂不支持该方案");
|
|
|
+ }
|
|
|
+
|
|
|
+ var canUpdateOrderSender = bool.Parse(_systemSettingCacheManager.GetSetting(SettingConstants.CanUpdateOrderSender).SettingValue[0]);
|
|
|
+ order.CenterToOrg(
|
|
|
+ expiredTimeConfig.TimeText, expiredTimeConfig.Count,
|
|
|
+ expiredTimeConfig.TimeType, expiredTimeConfig.ExpiredTime,
|
|
|
+ expiredTimeConfig.NearlyExpiredTime, expiredTimeConfig.NearlyExpiredTimeOne, dto.Workflow.Opinion,
|
|
|
+ _sessionContextProvider.SessionContext.RequiredUserId, _sessionContextProvider.SessionContext.UserName,
|
|
|
+ canUpdateOrderSender);
|
|
|
+ }
|
|
|
else if (dto.Workflow.FlowDirection is EFlowDirection.CenterToOrg)
|
|
|
{
|
|
|
expiredTimeConfig = await _expireTime.CalcExpiredTime(DateTime.Now, DateTime.Now, EFlowDirection.CenterToOrg, order.Adapt<OrderTimeClacInfo>());
|