diff --git a/Myshipping.Application/Entity/BookingOrder.cs b/Myshipping.Application/Entity/BookingOrder.cs
index a7d2a411..be230a93 100644
--- a/Myshipping.Application/Entity/BookingOrder.cs
+++ b/Myshipping.Application/Entity/BookingOrder.cs
@@ -366,12 +366,12 @@ namespace Myshipping.Application.Entity
///
/// SO备注
///
- [Description("SO备注")]
+ [Description("订舱备注")]
public string SOREMARK { get; set; }
///
/// SI备注
///
- [Description("SI备注")]
+ [Description("截单备注")]
public string SIREMARK { get; set; }
///
/// 场站备注
diff --git a/Myshipping.Application/Service/BookingOrder/BookingOrderService.cs b/Myshipping.Application/Service/BookingOrder/BookingOrderService.cs
index c95341d7..67d26d56 100644
--- a/Myshipping.Application/Service/BookingOrder/BookingOrderService.cs
+++ b/Myshipping.Application/Service/BookingOrder/BookingOrderService.cs
@@ -256,7 +256,7 @@ namespace Myshipping.Application
var query = _rep.AsQueryable().Filter(null, true).Where(x => x.TenantId == UserManager.TENANT_ID)
.WhereIF(!input.ISDel, x => x.IsDeleted == false)
.WhereIF(input.ISDel, x => x.IsDeleted == true)
- .WhereIF(input.firstFlag, x => (x.ETD <= etoday && x.ETD >= ftoday || x.ETD == null) && x.CreatedUserId == UserManager.UserId) //首次加载数据:ETD前后15天,且创建人是当前人
+ .WhereIF(input.firstFlag, x => (x.ETD <= etoday && x.ETD >= ftoday || x.ETD == null) &&(x.CreatedUserId == UserManager.UserId || x.OPID==UserManager.UserId.ToString() || x.DOCID==UserManager.UserId.ToString() || x.ROUTEID==UserManager.UserId.ToString() || x.CUSTSERVICEID==UserManager.UserId.ToString() || x.SALEID==UserManager.UserId.ToString())) //首次加载数据:ETD前后15天,且创建人、操作是当前人
.Where(x => x.ParentId == 0 || x.ParentId == null) //台账只查询主单!!
.WhereIF(input.Id != 0, x => x.Id == input.Id)
.WhereIF(pidlist != null && pidlist.Count > 0, x => pidlist.Contains(x.Id))
@@ -801,10 +801,10 @@ namespace Myshipping.Application
mlist.CUSTSERVICEID == UserManager.UserId.ToString() ||
mlist.ROUTEID == UserManager.UserId.ToString() ||
mlist.CreatedUserId.ToString() == UserManager.UserId.ToString() ||
- UserManager.DjyUserId == "d85fd590-d9f6-4410-93a1-f6fac77b606e" ||
rightlist.Contains((long)mlist.CreatedUserId)
))
{
+
throw Oops.Bah("您没有当前单据的操作权限!");
}
if (string.IsNullOrEmpty(entity.VOYNO))
@@ -1822,7 +1822,7 @@ namespace Myshipping.Application
if (!string.IsNullOrWhiteSpace(item.CARRIERID))
{
- var et = _repBookingStatus.AsQueryable().Where(x => x.StaCode == "sta_mudigang" && x.BookingId == Convert.ToInt64(item.BusinessId)).FirstAsync().Result;
+ var et = await _repBookingStatus.AsQueryable().Where(x => x.StaCode == "sta_mudigang" && x.BookingId == Convert.ToInt64(item.BusinessId)).FirstAsync();
if (et != null)
{
throw Oops.Bah("提单号" + item.MBLNO + "已订阅!");
@@ -1831,7 +1831,7 @@ namespace Myshipping.Application
if (!string.IsNullOrWhiteSpace(item.YardCode))
{
- var et = _repBookingStatus.AsQueryable().Where(x => x.StaCode == "sta_qiyungang" && x.BookingId == Convert.ToInt64(item.BusinessId)).FirstAsync().Result;
+ var et = await _repBookingStatus.AsQueryable().Where(x => x.StaCode == "sta_qiyungang" && x.BookingId == Convert.ToInt64(item.BusinessId)).FirstAsync();
if (et != null)
{
throw Oops.Bah("提单号" + item.MBLNO + "已订阅!");
@@ -1857,10 +1857,6 @@ namespace Myshipping.Application
CARRIERID = item.CARRIERID == "" ? null : item.CARRIERID,
isBook = item.isBook
});
- //var bookingStatusLog = new BookingStatusLog();
- //bookingStatusLog.BookingId = Convert.ToInt64(item.BusinessId);
- //bookingStatusLog.Category = "dingyue";
- //bookingStatusLog.CreatedTime = DateTime.Now;
var status = string.Empty;
if (string.IsNullOrWhiteSpace(item.YardCode) && !string.IsNullOrWhiteSpace(item.CARRIERID))
{
@@ -1959,8 +1955,110 @@ namespace Myshipping.Application
}
}
+ ///
+ /// 更新运踪提单号或自动订阅运踪
+ ///
+ ///
+ ///
+ [HttpPost("/BookingOrder/UpdateMblno")]
+ public async Task UpdateMblno(BookingOrder order)
+ {
+
+ var key = _webAccountConfig.GetAccountConfig("seae_billtraceurl", UserManager.UserId).Result;
+ if (key == null)
+ {
+ throw Oops.Bah("调用运踪接口相关账号未维护!");
+ }
+ var url = _cache.GetAllDictData().Result;
+ BillTraceDto billdto = new BillTraceDto();
+ List billTraceList = new List();
+ var dicdatalist = _cache.GetAllDictData().Result;
+ _logger.LogInformation("调用运踪修改接口提单号:" + order.MBLNO + " 调用运踪接口");
+
+ billTraceList.Add(new BillTraceList
+ {
+ BusinessId = order.Id.ToString(),
+ MBLNO = order.MBLNO,
+ YARD = order.YARD == "" ? null : order.YARD,
+ YardCode = order.YARDID == "" ? null : order.YARDID,
+ CARRIER = order.CARRIER == "" ? null : order.CARRIER,
+ CARRIERID = order.CARRIERID == "" ? null : order.CARRIERID,
+ isBook =true
+ });
+
+ var status = string.Empty;
+
+ if (string.IsNullOrWhiteSpace(order.YARDID) && !string.IsNullOrWhiteSpace(order.CARRIERID))
+ {
+ status = "订阅目的港";
+ }
+ if (!string.IsNullOrWhiteSpace(order.YARDID) && string.IsNullOrWhiteSpace(order.CARRIERID))
+ {
+ status = "订阅起运港";
+ }
+ if (!string.IsNullOrWhiteSpace(order.YARDID) && !string.IsNullOrWhiteSpace(order.CARRIERID))
+ {
+ status = "订阅起运港,目的港";
+ }
+
+ ////添加booking日志
+ var bid = await _bookinglog.InsertReturnSnowflakeIdAsync(new BookingLog
+ {
+ Type = "Trace",
+ BookingId = order.Id,
+ TenantId = UserManager.TENANT_ID,
+ CreatedTime = DateTime.Now,
+ CreatedUserId = UserManager.UserId,
+ CreatedUserName = UserManager.Name
+ });
+ await _bookinglogdetail.InsertReturnSnowflakeIdAsync(new BookingLogDetail
+ {
+ PId = bid,
+ Field = "",
+ OldValue = "",
+ NewValue = status,
+ });
+
+
+
+ if (!string.IsNullOrWhiteSpace(order.CARRIERID))
+ {
+ BookingStatus bookingStatus = new BookingStatus();
+ bookingStatus.BookingId = order.Id;
+ bookingStatus.StaCode = "sta_mudigang";
+ bookingStatus.StaName = dicdatalist.Where(x => x.Code == "sta_mudigang").Select(x => x.Value).FirstOrDefault();
+ bookingStatus.StaTime = DateTime.Now;
+ bookingStatus.StaCate = "book_sta_cate_billtrace";
+ await _repBookingStatus.InsertAsync(bookingStatus);
+ }
+ if (!string.IsNullOrWhiteSpace(order.YARDID))
+ {
+ BookingStatus bookingStatus = new BookingStatus();
+ bookingStatus.BookingId = order.Id;
+ bookingStatus.StaCode = "sta_qiyungang";
+ bookingStatus.StaName = dicdatalist.Where(x => x.Code == "sta_qiyungang").Select(x => x.Value).FirstOrDefault();
+ bookingStatus.StaTime = DateTime.Now;
+ bookingStatus.StaCate = "book_sta_cate_billtrace";
+ await _repBookingStatus.InsertAsync(bookingStatus);
+ }
+
+ billdto.Children = billTraceList;
+ billdto.Key = key.Account;
+ billdto.PWD = key.Password;
+ billdto.url = url.FirstOrDefault(x => x.TypeCode == "url_set" && x.Code == "response_seae_billtraceurl").Value;
+ billdto.Gid = UserManager.DjyUserId;
+ var json = billdto.ToJsonString();
+ _logger.LogInformation("调用运踪更改接口发送josn:" + json);
+ var html = await url.FirstOrDefault(x => x.TypeCode == "url_set" && x.Code == "request_seae_updatebilltraceurl").Value.SetHttpMethod(HttpMethod.Post).SetQueries(new { msg = json }).SetRetryPolicy(3, 5000).SendAsAsync();
+ _logger.LogInformation("调用运踪更改接口返回" + html.ToJsonString());
+ if (html.Success != true)
+ {
+ _logger.LogError("调用运踪更改接口返回:" + html.ToJsonString());
+ throw Oops.Bah(html.Message);
+ }
+ }
#endregion
#region 放舱(入货通知)
diff --git a/Myshipping.Application/Service/DataSync/Dto/BookingOrderDto.cs b/Myshipping.Application/Service/DataSync/Dto/BookingOrderDto.cs
index 3c187588..2a051187 100644
--- a/Myshipping.Application/Service/DataSync/Dto/BookingOrderDto.cs
+++ b/Myshipping.Application/Service/DataSync/Dto/BookingOrderDto.cs
@@ -304,11 +304,11 @@ namespace Myshipping.Application.Service.DataSync.Dto
///
public bool? ISCONTAINERSOC { get; set; }
///
- /// SO备注
+ /// 订舱备注
///
public string SOREMARK { get; set; }
///
- /// SI备注
+ /// 截单备注
///
public string SIREMARK { get; set; }
///