|
@@ -19,6 +19,7 @@ using Hotline.Share.Dtos;
|
|
|
using Hotline.Settings.Hotspots;
|
|
|
using Hotline.Share.Dtos.FlowEngine;
|
|
|
using Microsoft.AspNetCore.Http;
|
|
|
+using Hotline.Settings;
|
|
|
|
|
|
namespace Hotline.Orders;
|
|
|
|
|
@@ -112,8 +113,8 @@ public class OrderDomainService : IOrderDomainService, IScopeDependency
|
|
|
order.Init();
|
|
|
order.No = GenerateNewOrderNo();
|
|
|
order.Password = Random.Shared.Next(100000, 1000000).ToString();
|
|
|
- order.ProvinceNo ??= GenerateNewProvinceNo(order.No, order.SourceChannelCode);
|
|
|
- return await _orderRepository.AddOrderNavAsync(order, cancellationToken);
|
|
|
+ order.ProvinceNo = string.IsNullOrEmpty(order.ProvinceNo) ? GenerateNewProvinceNo(order.No, order.SourceChannelCode) : order.ProvinceNo;
|
|
|
+ return await _orderRepository.AddOrderNavAsync(order, cancellationToken);
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
@@ -434,23 +435,25 @@ public class OrderDomainService : IOrderDomainService, IScopeDependency
|
|
|
return no;
|
|
|
}
|
|
|
|
|
|
- private string GenerateNewProvinceNo(string no, string sourceChannelCode)
|
|
|
+ private string GenerateNewProvinceNo(string no, string sourceChannelCode,string areaCode)
|
|
|
{
|
|
|
//诉求渠道+成员单位标识+行政区划代码+年月日+流水号
|
|
|
//成员单位标识 99
|
|
|
//宜宾市 511500 市级
|
|
|
var today = DateTime.Today;
|
|
|
- //var count = no.Substring(no.Length - 5);
|
|
|
+ //var count = no.Substring(no.Length - 5);
|
|
|
+ var setting = _systemSettingCacheManager.GetSetting(SettingConstants.VersionsAreaCode);
|
|
|
+ var versionsAreaCode = setting?.SettingValue[0];
|
|
|
|
|
|
- //todo 双系统并行暂时执行此方案
|
|
|
- var count = no.Substring(no.Length - 4);
|
|
|
+ //todo 双系统并行暂时执行此方案
|
|
|
+ var count = no.Substring(no.Length - 4);
|
|
|
count = (Convert.ToInt32(count) + 50000).ToString();
|
|
|
|
|
|
var provinceCodes = new[] { "RGDH", "WX", "WB", "AP", "WZ", "YJ", "SCZWFWW", "XCX", "QT" };
|
|
|
var prefix = provinceCodes.Any(d => d.Equals(sourceChannelCode))
|
|
|
? sourceChannelCode
|
|
|
: "QT";
|
|
|
- return $"{prefix}99511500{today:yyMMdd}{count}";
|
|
|
+ return $"{prefix}99{versionsAreaCode}{today:yyMMdd}{count}";
|
|
|
}
|
|
|
|
|
|
|