diff --git a/Myshipping.Application/Service/BookingOrder/BookingOrderService.cs b/Myshipping.Application/Service/BookingOrder/BookingOrderService.cs index 407dae55..8e237112 100644 --- a/Myshipping.Application/Service/BookingOrder/BookingOrderService.cs +++ b/Myshipping.Application/Service/BookingOrder/BookingOrderService.cs @@ -1740,7 +1740,7 @@ namespace Myshipping.Application entity.BOOKINGNO = Yitter.IdGenerator.YitIdHelper.NextId().ToString(); entity.BSDATE = DateTime.Today; - entity.BSNO = null; + //entity.BSNO = null; await _rep.InsertAsync(entity); if (!string.IsNullOrEmpty(reqId)) diff --git a/Myshipping.Application/Service/DataSync/DataSyncService.cs b/Myshipping.Application/Service/DataSync/DataSyncService.cs index 2df2b09b..e1bf97dc 100644 --- a/Myshipping.Application/Service/DataSync/DataSyncService.cs +++ b/Myshipping.Application/Service/DataSync/DataSyncService.cs @@ -2732,6 +2732,44 @@ namespace Myshipping.Application } + + + /// + /// 接收其他系统上传订舱数据 + /// + /// + /// + [HttpPost("/DataSync/UploadOrderData"), AllowAnonymous, ApiUser(ApiCode = "UploadOrderData")] + public async Task UploadOrderData(BookingOrderDto dto) + { + var saveDto = dto.Adapt(); + var dbModel = await _rep.AsQueryable().Filter(null, true).FirstAsync(x => x.TenantId == UserManager.TENANT_ID && x.BSNO == dto.BSNO); + if (dbModel != null) + { + dto.Id = dbModel.Id; + saveDto.Id = dbModel.Id; + + var compareModel = dbModel.Adapt(); + var propsOrder = typeof(BookingOrderDto).GetProperties(); + var changeFileds = new List(); + foreach (var prop in propsOrder) + { + if (prop.Name != "ctnInputs" && prop.Name != "BookingEDIExt" && prop.Name != "ExtendState") + { + var v1 = prop.GetValue(compareModel); + var v2 = prop.GetValue(dto); + if (v1 != v2) + { + changeFileds.Add(prop.Name); + } + } + } + + saveDto.ChangedFields = changeFileds; + } + + await _bookingorderservice.Save(saveDto); + } #endregion #region 下载数据