|
|
|
@ -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
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 更新运踪提单号或自动订阅运踪
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="order"></param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
[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> billTraceList = new List<BillTraceList>();
|
|
|
|
|
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<RespCommon>();
|
|
|
|
|
_logger.LogInformation("调用运踪更改接口返回" + html.ToJsonString());
|
|
|
|
|
if (html.Success != true)
|
|
|
|
|
{
|
|
|
|
|
_logger.LogError("调用运踪更改接口返回:" + html.ToJsonString());
|
|
|
|
|
throw Oops.Bah(html.Message);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
#region 放舱(入货通知)
|
|
|
|
|