cjy 4 weeks ago
commit 054587ff25

@ -335,6 +335,16 @@ namespace DS.Module.Core
/// </summary>
[Description("整票应付确认")]
BILL_PAY_AUDIT = 605,
/// <summary>
/// 锁单审核
/// </summary>
[Description("锁单审核")]
BILL_LOCK_AUDIT = 606,
/// <summary>
/// 账单发送
/// </summary>
[Description("账单发送")]
BILL_SENDING = 607,
#endregion
#region 申请相关审核
@ -413,6 +423,11 @@ namespace DS.Module.Core
[Description("整票应付驳回")]
BILL_PAY_REJECTED = -605,
/// <summary>
/// 锁单审核驳回
/// </summary>
[Description("锁单审核驳回")]
BILL_LOCK_REJECTED = -606,
/// <summary>
/// 付费申请驳回
/// </summary>
[Description("付费申请驳回")]

@ -65,7 +65,7 @@ public class CodeThirdParty : BaseModel<long>
/// 是否为公司账号
/// </summary>
[SugarColumn(ColumnDescription = "是否为公司账号", DefaultValue = "0")]
public bool IsCompany { get; set; } = false;
public bool IsCompany { get; set; }
/// <summary>
/// 备案代码

@ -75,6 +75,13 @@ namespace DS.WMS.Core.Fee.Dtos
/// 会计科目
/// </summary>
public string LedgerAccount { get; set; }
/// <summary>
/// 驳回原因
/// </summary>
public string Remark { get; set; }
}
}

@ -87,5 +87,6 @@ namespace DS.WMS.Core.Fee.Entity
/// </summary>
public string LedgerAccount { get; set; }
}
}

@ -102,8 +102,9 @@ public interface IFeeRecordService
/// <param name="bid">业务ID</param>
/// <param name="type">业务类型</param>
/// <param name="taskType">任务类型</param>
/// <param name="useTransaction">是否使用事务</param>
/// <returns></returns>
Task<DataResult> SubmitBillAuditAsync(long bid, BusinessType type, TaskBaseTypeEnum taskType);
Task<DataResult> SubmitBillAuditAsync(long bid, BusinessType type, TaskBaseTypeEnum taskType, bool useTransaction = true);
/// <summary>
/// 撤销整票审批

@ -880,8 +880,9 @@ namespace DS.WMS.Core.Fee.Method
/// <param name="bid">业务ID</param>
/// <param name="type">业务类型</param>
/// <param name="taskType">任务类型</param>
/// <param name="useTransaction">是否使用事务</param>
/// <returns></returns>
public async Task<DataResult> SubmitBillAuditAsync(long bid, BusinessType type, TaskBaseTypeEnum taskType)
public async Task<DataResult> SubmitBillAuditAsync(long bid, BusinessType type, TaskBaseTypeEnum taskType, bool useTransaction = true)
{
var entity = await TenantDb.Queryable<BusinessFeeStatus>().Where(x => x.BusinessId == bid && x.BusinessType == type)
.Select(x => new BusinessFeeStatus
@ -919,6 +920,7 @@ namespace DS.WMS.Core.Fee.Method
return DataResult.FailedWithDesc(nameof(MultiLanguageConst.FeeRecordIsAuditing));
DataResult result;
if (useTransaction)
await TenantDb.Ado.BeginTranAsync();
try
{
@ -987,11 +989,13 @@ namespace DS.WMS.Core.Fee.Method
}).ExecuteCommandAsync();
}
if (useTransaction)
await TenantDb.Ado.CommitTranAsync();
return DataResult.Success;
}
catch (Exception ex)
{
if (useTransaction)
await TenantDb.Ado.RollbackTranAsync();
await ex.LogAsync(Db);
return DataResult.FailedWithDesc(nameof(MultiLanguageConst.Operation_Failed));

@ -437,8 +437,17 @@ namespace DS.WMS.Core.Fee.Method
{
item.Status = ReimbursementTypeEnums.Approved;
tenantDb.Updateable(item).ExecuteCommand();
//找到对应的审批发票
var ininviceinfo = tenantDb.Queryable<InInvoice>().Where(t => t.InvoiceNumber == item.InvoiceNumber).First();
if (ininviceinfo != null)
{
ininviceinfo.ReimbursementType = ReimbursementTypeEnums.Approved;
tenantDb.Updateable(ininviceinfo).ExecuteCommand();
}
}
}
//审核驳回
if (callback.FlowStatus == FlowStatusEnum.Reject)
{
info.ReimbursementType = ReimbursementTypeEnums.Rejected;
@ -452,9 +461,19 @@ namespace DS.WMS.Core.Fee.Method
item.Status = ReimbursementTypeEnums.Approved;
item.RejectReason = callback.RejectReason;
tenantDb.Updateable(item).ExecuteCommand();
//找到对应的审批发票
var ininviceinfo = tenantDb.Queryable<InInvoice>().Where(t => t.InvoiceNumber==item.InvoiceNumber).First();
if (ininviceinfo != null)
{
ininviceinfo.ReimbursementType = ReimbursementTypeEnums.NotSubmitted;
tenantDb.Updateable(ininviceinfo).ExecuteCommand();
}
}
}
return DataResult.Success;
//return rows > 0 ? DataResult.Success : DataResult.FailedWithDesc(nameof(MultiLanguageConst.Operation_Failed));
@ -489,7 +508,7 @@ namespace DS.WMS.Core.Fee.Method
{
item.LedgerAccount = request.LedgerAccount;
}
db.Updateable(info).ExecuteCommand();
tenantDb.Updateable(info).ExecuteCommand();
//获取当前审批人信息
var userinfo= db.Queryable<SysUser>().Where(t => t.Id.ToString()== user.UserId).First();

@ -24,7 +24,7 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// 场站Id t_crm_client CUSTNAME
/// </summary>
public long YardId { get; set; }
public Nullable<long> YardId { get; set; }
/// <summary>
/// 场站 t_crm_client CUSTNAME
/// </summary>
@ -33,7 +33,7 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// 船公司Id
/// </summary>
public long CarrierId { get; set; }
public Nullable<long> CarrierId { get; set; }
/// <summary>
/// 船公司
/// </summary>
@ -41,7 +41,7 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// 货代公司Id
/// </summary>
public long ForwarderId { get; set; }
public Nullable<long> ForwarderId { get; set; }
/// <summary>
/// 货代公司
/// </summary>
@ -55,7 +55,7 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// 航线Id
/// </summary>
public long LaneId { get; set; }
public Nullable<long> LaneId { get; set; }
/// <summary>
/// 航线
@ -64,7 +64,7 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// 揽货人Id
/// </summary>
public long SaleId { get; set; }
public Nullable<long> SaleId { get; set; }
/// <summary>
/// 揽货人
/// </summary>
@ -73,7 +73,7 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// 报关行Id
/// </summary>
public long CustomserId { get; set; }
public Nullable<long> CustomserId { get; set; }
/// <summary>
/// 报关行
/// </summary>
@ -82,7 +82,7 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// 承运车队Id
/// </summary>
public long TruckerId { get; set; }
public Nullable<long> TruckerId { get; set; }
/// <summary>
/// 承运车队
/// </summary>
@ -91,7 +91,7 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// 装货港代码
/// </summary>
public long LoadPortId { get; set; }
public Nullable<long> LoadPortId { get; set; }
/// <summary>
/// 装货港
@ -101,7 +101,7 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// 卸货港代码
/// </summary>
public long DischargePortId { get; set; }
public Nullable<long> DischargePortId { get; set; }
/// <summary>
/// 卸货港
@ -116,7 +116,7 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// 船名Id
/// </summary>
public long VesselId { get; set; }
public Nullable<long> VesselId { get; set; }
/// <summary>
/// 内部航次
/// </summary>
@ -129,7 +129,7 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// 国外代理人Id t_info_client CUSTNAME
/// </summary>
public long? AgentId { get; set; }
public Nullable<long> AgentId { get; set; }
/// <summary>
/// 国外代理人 t_info_client CUSTNAME
/// </summary>
@ -143,21 +143,21 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// Desc:单证
/// </summary>
public long Doc { get; set; }
public Nullable<long> Doc { get; set; }
/// <summary>
/// 客服
/// </summary>
public long CustomerService { get; set; }
public Nullable<long> CustomerService { get; set; }
/// <summary>
/// 海外客服
/// </summary>
public long ForeignCustomerService { get; set; }
public Nullable<long> ForeignCustomerService { get; set; }
/// <summary>
/// 操作员
/// </summary>
public long OperatorId { get; set; }
public Nullable<long> OperatorId { get; set; }
/// <summary>
/// ATD
/// </summary>
@ -189,24 +189,24 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// Desc:业务来源Id
/// </summary>
public long SourceId { get; set; }
public Nullable<long> SourceId { get; set; }
/// <summary>
/// Desc:业务来源明细Id
/// </summary>
public long SourceDetailId { get; set; }
public Nullable<long> SourceDetailId { get; set; }
/// <summary>
/// 船代Id
/// </summary>
public long ShipAgencyId { get; set; }
public Nullable<long> ShipAgencyId { get; set; }
/// <summary>
/// 船代
/// </summary>
public long ShipAgency { get; set; }
public Nullable<long> ShipAgency { get; set; }
@ -227,7 +227,7 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// 交货地代码
/// </summary>
public long DeliveryPlaceId { get; set; }
public Nullable<long> DeliveryPlaceId { get; set; }
/// <summary>
/// 交货地
@ -244,7 +244,7 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// 签单地点Id
/// </summary>
public long IssuePlaceId { get; set; }
public Nullable<long> IssuePlaceId { get; set; }
/// <summary>
/// 签单地点
@ -263,7 +263,7 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// Desc:所属业务部门
/// </summary>
public long SaleDeptId { get; set; }
public Nullable<long> SaleDeptId { get; set; }
/// <summary>
/// 代理内容
@ -278,7 +278,7 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// 委托单位Id
/// </summary>
public long CustomerId { get; set; }
public Nullable<long> CustomerId { get; set; }
/// <summary>
/// 委托单位 t_info_client CUSTNAME
/// </summary>
@ -291,7 +291,7 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// 销售公司Id
/// </summary>
public long SaleOrgId { get; set; }
public Nullable<long> SaleOrgId { get; set; }
/// <summary>
/// 货物标识 S/R/D/O
@ -317,36 +317,36 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// Desc:报检
/// </summary>
public bool? IsInspection { get; set; } = false;
public bool? IsInspection { get; set; }
/// <summary>
/// Desc:仅报关
/// </summary>
public bool? IsCustoms { get; set; } = false;
public bool? IsCustoms { get; set; }
/// <summary>
/// Desc:订舱
/// </summary>
public bool? IsBooking { get; set; } = false;
public bool? IsBooking { get; set; }
/// <summary>
/// Desc:分单签单
/// </summary>
public bool? IsHBLNO { get; set; } = false;
public bool? IsHBLNO { get; set; }
/// <summary>
/// Desc:陆运
/// </summary>
public bool? IsLand { get; set; } = false;
public bool? IsLand { get; set; }
/// <summary>
/// Desc:使用代理
/// </summary>
public bool? IsAgent { get; set; } = false;
public bool? IsAgent { get; set; }
/// <summary>
/// Desc:仓储
/// </summary>
public bool? IsStorage { get; set; } = false;
public bool? IsStorage { get; set; }
/// <summary>
@ -417,7 +417,7 @@ namespace DS.WMS.Core.Op.Dtos
/// <summary>
/// 收货地点Id
/// </summary>
public long ReceiptPlaceId { get; set; }
public Nullable<long> ReceiptPlaceId { get; set; }
/// <summary>
/// 截VGM时间
@ -433,5 +433,6 @@ namespace DS.WMS.Core.Op.Dtos
/// 主提单号
/// </summary>
public string MBLNO { get; set; }
}
}

@ -92,7 +92,7 @@ namespace DS.WMS.Core.Op.Entity
/// <summary>
/// Desc:业务锁定人
/// </summary>
[SugarColumn(ColumnDescription = "业务锁定人", IsNullable = true, Length =100)]
[SugarColumn(ColumnDescription = "业务锁定人", IsNullable = true, Length = 100)]
public string BusinessLockingUserName { get; set; }
/// <summary>
/// 业务锁定时间
@ -148,8 +148,21 @@ namespace DS.WMS.Core.Op.Entity
/// <summary>
/// 费用解锁时间
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "费用解锁时间", IsNullable = true)]
[SugarColumn(ColumnDescription = "费用解锁时间", IsNullable = true)]
public DateTime FeeUnLockingTime { get; set; }
/// <summary>
/// 整单利润
/// </summary>
[SugarColumn(IsIgnore = true)]
public decimal ProfitMargin { get; set; }
/// <summary>
/// 委托编号
/// </summary>
[SugarColumn(IsIgnore = true)]
public string? CustomerNo { get; set; }
/// <summary>
/// 业务初始化费用状态
/// </summary>

@ -3085,6 +3085,8 @@ namespace DS.WMS.Core.Op.Method
CtnInfo = new List<OpCtnReq>()
};
if (!model.isOrderImport)
{
if (bookingSlotBase.ETD.HasValue)
{
bkModel.AccountDate = bookingSlotBase.ETD.Value.ToString("yyyy-MM");
@ -3093,6 +3095,7 @@ namespace DS.WMS.Core.Op.Method
{
bkModel.AccountDate = DateTime.Now.ToString("yyyy-MM");
}
}
var ctnList = model.slots.SelectMany(b => b.CtnList).ToList();

@ -121,6 +121,8 @@ namespace DS.WMS.Core.Op.Method
detail.Status = "FAILURE";
detail.Message = $"当前操作OP={userInfo?.UserName}没有绑定大简云用户ID,请联系管理员";
_dingTalkGroupHelper.SendDingTalkGroupMessage("bookingFeeNotify", "扣费失败提醒", $"当前操作OP={userInfo?.UserName}没有绑定大简云用户ID,请联系管理员,公司:{user.TenantName}");
Logger.Log(NLog.LogLevel.Info, $"当前操作OP={userInfo?.UserName}没有绑定大简云用户ID,请联系管理员");
continue;
}
@ -134,6 +136,8 @@ namespace DS.WMS.Core.Op.Method
detail.Message = $"未配置大简云扣费授权,请在接口账户维护";
Logger.Log(NLog.LogLevel.Info, $"未配置大简云扣费授权,请在接口账户维护");
_dingTalkGroupHelper.SendDingTalkGroupMessage("bookingFeeNotify", "扣费失败提醒", $"未配置大简云扣费授权,请在接口账户维护,公司:{user.TenantName}");
continue;
}

@ -20,7 +20,6 @@ namespace DS.WMS.Core.QuarztJobs.Dtos
/// </summary>
public string kprqjs { get; set; }
public int pageSize { get; set; }
}

@ -72,17 +72,18 @@ namespace DS.WMS.Core.QuarztJobs.Method
});
var listdt = info.result.Select(t => t.TransactionReferenceNumber).ToList();
var ininviceinfo = tenantDb.Queryable<BankStatement>().Where(x =>listdt .Contains(x.TransactionReferenceNumber)).ToList();
var listdt = info.result.Select(t => t.RecordID).ToList();
var ininviceinfo = tenantDb.Queryable<BankStatement>().Where(x =>listdt .Contains(x.RecordID)).ToList();
foreach (var itemdata in info.result)
{
//数据库中银行流水为空,则添加银行流水数据数据
if (ininviceinfo.Where(t => t.TransactionReferenceNumber == itemdata.TransactionReferenceNumber).Count() == 0)
if (ininviceinfo.Where(t => t.RecordID == itemdata.RecordID).Count() == 0)
{
BankStatement bs = new BankStatement();
bs.Id = SnowFlakeSingle.Instance.NextId();
bs.OrgId = item.OrgId;
bs.Custom = itemdata.Custom;
bs.BankName = itemdata.BankName;

@ -1,9 +1,14 @@
using DS.Module.Core;
using DS.WMS.Core.Fee.Entity;
using DS.WMS.Core.Fee.Interface;
using DS.WMS.Core.Flow.Dtos;
using DS.WMS.Core.Op.Entity;
using DS.WMS.Core.TaskInteraction.Dtos;
using DS.WMS.Core.TaskInteraction.Interface;
using Masuit.Tools.Systems;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using SqlSugar;
namespace DS.WMS.Core.TaskInteraction.Method
{
@ -12,12 +17,16 @@ namespace DS.WMS.Core.TaskInteraction.Method
/// </summary>
public class FeeBillTaskService : TaskService, IFeeBillTaskService
{
readonly IFeeRecordService feeService;
readonly ILogger<FeeBillTaskService> logger;
/// <summary>
/// 初始化
/// </summary>
/// <param name="provider"></param>
public FeeBillTaskService(IServiceProvider provider) : base(provider)
{
feeService = provider.GetRequiredService<IFeeRecordService>();
logger = provider.GetRequiredService<ILogger<FeeBillTaskService>>();
}
/// <summary>
@ -43,13 +52,17 @@ namespace DS.WMS.Core.TaskInteraction.Method
return;
var biz = await TenantDb.Queryable<BusinessFeeStatus>().Where(x => x.BusinessId == callback.BusinessId && x.BusinessType == callback.BusinessType)
.Select(x => new BusinessFeeStatus
.InnerJoin<SeaExport>((x, s) => x.BusinessId == s.Id)
.Select((x, s) => new BusinessFeeStatus
{
CustomerNo = s.CustomerNo,
Id = x.Id,
BusinessId = x.BusinessId,
BusinessType = x.BusinessType,
BillAuditStatus = x.BillAuditStatus,
BillFeeStatusTime = x.BillFeeStatusTime
BillFeeStatusTime = x.BillFeeStatusTime,
ProfitMargin = SqlFunc.Subqueryable<FeeRecord>().Where(f => f.BusinessId == x.BusinessId && f.BusinessType == x.BusinessType && f.FeeType == FeeType.Receivable).Sum(f => f.Amount)
- SqlFunc.Subqueryable<FeeRecord>().Where(f => f.BusinessId == x.BusinessId && f.BusinessType == x.BusinessType && f.FeeType == FeeType.Payable).Sum(f => f.Amount)
}).FirstAsync();
if (biz == null)
return;
@ -64,6 +77,9 @@ namespace DS.WMS.Core.TaskInteraction.Method
if (callback.FlowStatus == FlowStatusEnum.Approve)
{
biz.BillAuditStatus = BillAuditStatus.RecvPassed;
//生成应付确认任务
await feeService.SubmitBillAuditAsync(callback.BusinessId, callback.BusinessType.GetValueOrDefault(),
TaskBaseTypeEnum.BILL_PAY_AUDIT, false);
}
else if (callback.FlowStatus == FlowStatusEnum.Reject)
{
@ -127,6 +143,37 @@ namespace DS.WMS.Core.TaskInteraction.Method
await ex.LogAsync(Db);
throw;
}
if (biz.ProfitMargin > 0)
{
biz.IsFeeLocking = true;
biz.FeeLockingTime = dtNow;
biz.FeeLockingUserId = userId;
biz.FeeLockingUserName = User.UserName;
await TenantDb.Updateable(biz).UpdateColumns(x => new
{
x.IsFeeLocking,
x.FeeLockingTime,
x.FeeLockingUserId,
x.FeeLockingUserName
}).ExecuteCommandAsync();
}
else //如果为非正利润则生成锁单任务
{
var result = await CreateTaskAsync(new TaskCreationRequest
{
BusinessId = biz.BusinessId,
BusinessType = biz.BusinessType,
TaskTypeName = TaskBaseTypeEnum.BILL_LOCK_AUDIT.ToString(),
TaskTitle = $"【{TaskBaseTypeEnum.BILL_LOCK_AUDIT.GetDescription()}】{biz.CustomerNo}",
});
if (!result.Succeeded)
logger.LogError($"生成【{TaskBaseTypeEnum.BILL_LOCK_AUDIT.GetDescription()}】任务失败:" + result.Message);
}
}
}
}

@ -5,7 +5,7 @@ https://go.microsoft.com/fwlink/?LinkID=208121.
<Project>
<PropertyGroup>
<_PublishTargetUrl>D:\Publish\DS8\FeeApi</_PublishTargetUrl>
<History>True|2024-11-04T03:26:53.4821041Z||;True|2024-11-04T11:19:48.8467193+08:00||;True|2024-11-04T11:01:39.9398452+08:00||;True|2024-11-04T10:30:55.0743204+08:00||;True|2024-11-02T21:17:44.8575190+08:00||;True|2024-11-02T20:54:29.9931812+08:00||;True|2024-11-02T20:39:20.4100370+08:00||;True|2024-11-02T18:33:41.0724285+08:00||;True|2024-11-02T18:21:55.8561639+08:00||;True|2024-11-02T17:36:24.3401782+08:00||;True|2024-11-02T16:38:03.0054105+08:00||;True|2024-11-02T16:26:26.1698304+08:00||;True|2024-11-02T16:15:20.2872358+08:00||;True|2024-11-02T15:19:14.9663838+08:00||;True|2024-11-02T14:39:47.8808708+08:00||;False|2024-11-02T14:22:04.2841792+08:00||;True|2024-11-02T11:50:48.2452805+08:00||;True|2024-10-29T18:52:12.7978878+08:00||;True|2024-10-29T10:27:49.1623527+08:00||;True|2024-10-25T15:09:27.7029075+08:00||;True|2024-10-25T10:29:26.9218878+08:00||;True|2024-10-22T17:58:39.9582805+08:00||;True|2024-10-21T17:57:21.7047579+08:00||;True|2024-10-21T14:30:54.4520206+08:00||;True|2024-10-21T10:19:05.7405749+08:00||;True|2024-10-18T16:11:05.4049685+08:00||;True|2024-10-18T14:59:49.1162741+08:00||;True|2024-10-16T16:29:15.3185348+08:00||;True|2024-10-16T14:12:58.1754214+08:00||;True|2024-10-16T14:08:06.5805581+08:00||;True|2024-10-16T11:55:29.8273176+08:00||;True|2024-10-15T17:39:40.4090324+08:00||;True|2024-10-15T17:06:43.0181578+08:00||;True|2024-10-15T15:07:38.9601925+08:00||;True|2024-10-12T13:33:32.4412583+08:00||;True|2024-10-11T17:00:54.0916209+08:00||;True|2024-10-11T10:54:50.3307087+08:00||;True|2024-10-11T10:45:07.8181500+08:00||;True|2024-10-11T10:40:44.2066046+08:00||;True|2024-10-11T10:21:25.7226983+08:00||;True|2024-10-11T10:09:05.5257478+08:00||;True|2024-10-10T14:58:29.1228618+08:00||;True|2024-10-10T14:05:59.4501659+08:00||;True|2024-10-10T11:08:58.9765455+08:00||;True|2024-10-08T17:59:07.5583287+08:00||;True|2024-09-27T19:01:59.6945760+08:00||;True|2024-09-27T18:45:48.2812860+08:00||;True|2024-09-27T18:10:25.5697467+08:00||;True|2024-09-27T17:39:06.3169139+08:00||;True|2024-09-27T17:30:14.1043193+08:00||;True|2024-09-27T16:02:09.0703159+08:00||;True|2024-09-27T15:53:05.1789245+08:00||;True|2024-09-27T15:32:52.1934490+08:00||;True|2024-09-27T13:51:24.9197626+08:00||;True|2024-09-27T13:48:17.2817346+08:00||;True|2024-09-27T11:51:46.8193040+08:00||;True|2024-09-27T10:58:33.1059648+08:00||;True|2024-09-27T10:37:35.0336563+08:00||;False|2024-09-27T10:31:52.6302264+08:00||;True|2024-09-26T19:50:15.5513195+08:00||;True|2024-09-26T19:47:14.0781788+08:00||;True|2024-09-26T19:01:26.5428388+08:00||;True|2024-09-26T18:35:28.7455319+08:00||;True|2024-09-26T18:24:30.8084807+08:00||;True|2024-09-26T18:20:47.3005460+08:00||;True|2024-09-26T18:04:39.8012913+08:00||;True|2024-09-26T17:48:13.8526872+08:00||;True|2024-09-26T16:08:20.1746970+08:00||;True|2024-09-26T16:01:01.1501975+08:00||;False|2024-09-26T16:00:34.1516745+08:00||;True|2024-09-26T14:33:03.4007570+08:00||;True|2024-09-25T19:14:27.8906774+08:00||;True|2024-09-25T18:57:40.1435131+08:00||;True|2024-09-25T17:38:44.0915841+08:00||;True|2024-09-25T15:33:58.4630618+08:00||;True|2024-09-25T15:10:31.3022063+08:00||;False|2024-09-25T14:14:40.9640545+08:00||;True|2024-09-25T10:09:32.2558600+08:00||;True|2024-09-25T09:59:17.1525160+08:00||;False|2024-09-25T09:57:58.7265103+08:00||;False|2024-09-25T09:53:36.7732713+08:00||;False|2024-09-24T18:40:10.0166224+08:00||;True|2024-09-24T08:59:56.1995425+08:00||;True|2024-09-23T18:07:54.7222163+08:00||;True|2024-09-23T17:23:57.7568406+08:00||;True|2024-09-23T16:28:49.3169826+08:00||;True|2024-09-23T15:57:31.8052490+08:00||;True|2024-09-23T11:47:21.1445419+08:00||;True|2024-09-23T09:24:36.0732229+08:00||;True|2024-09-21T11:59:19.0549926+08:00||;True|2024-09-21T11:24:32.4451752+08:00||;True|2024-09-21T10:39:11.5297411+08:00||;True|2024-09-20T18:24:31.7827684+08:00||;True|2024-09-19T17:55:53.1666689+08:00||;True|2024-09-19T17:42:47.9061485+08:00||;True|2024-09-19T16:08:21.7225571+08:00||;False|2024-09-19T14:15:42.9318446+08:00||;True|2024-09-19T11:20:03.5567568+08:00||;True|2024-09-18T11:35:18.1509724+08:00||;True|2024-09-18T09:08:59.1152574+08:00||;</History>
<History>True|2024-11-04T07:21:49.7395112Z||;True|2024-11-04T11:26:53.4821041+08:00||;True|2024-11-04T11:19:48.8467193+08:00||;True|2024-11-04T11:01:39.9398452+08:00||;True|2024-11-04T10:30:55.0743204+08:00||;True|2024-11-02T21:17:44.8575190+08:00||;True|2024-11-02T20:54:29.9931812+08:00||;True|2024-11-02T20:39:20.4100370+08:00||;True|2024-11-02T18:33:41.0724285+08:00||;True|2024-11-02T18:21:55.8561639+08:00||;True|2024-11-02T17:36:24.3401782+08:00||;True|2024-11-02T16:38:03.0054105+08:00||;True|2024-11-02T16:26:26.1698304+08:00||;True|2024-11-02T16:15:20.2872358+08:00||;True|2024-11-02T15:19:14.9663838+08:00||;True|2024-11-02T14:39:47.8808708+08:00||;False|2024-11-02T14:22:04.2841792+08:00||;True|2024-11-02T11:50:48.2452805+08:00||;True|2024-10-29T18:52:12.7978878+08:00||;True|2024-10-29T10:27:49.1623527+08:00||;True|2024-10-25T15:09:27.7029075+08:00||;True|2024-10-25T10:29:26.9218878+08:00||;True|2024-10-22T17:58:39.9582805+08:00||;True|2024-10-21T17:57:21.7047579+08:00||;True|2024-10-21T14:30:54.4520206+08:00||;True|2024-10-21T10:19:05.7405749+08:00||;True|2024-10-18T16:11:05.4049685+08:00||;True|2024-10-18T14:59:49.1162741+08:00||;True|2024-10-16T16:29:15.3185348+08:00||;True|2024-10-16T14:12:58.1754214+08:00||;True|2024-10-16T14:08:06.5805581+08:00||;True|2024-10-16T11:55:29.8273176+08:00||;True|2024-10-15T17:39:40.4090324+08:00||;True|2024-10-15T17:06:43.0181578+08:00||;True|2024-10-15T15:07:38.9601925+08:00||;True|2024-10-12T13:33:32.4412583+08:00||;True|2024-10-11T17:00:54.0916209+08:00||;True|2024-10-11T10:54:50.3307087+08:00||;True|2024-10-11T10:45:07.8181500+08:00||;True|2024-10-11T10:40:44.2066046+08:00||;True|2024-10-11T10:21:25.7226983+08:00||;True|2024-10-11T10:09:05.5257478+08:00||;True|2024-10-10T14:58:29.1228618+08:00||;True|2024-10-10T14:05:59.4501659+08:00||;True|2024-10-10T11:08:58.9765455+08:00||;True|2024-10-08T17:59:07.5583287+08:00||;True|2024-09-27T19:01:59.6945760+08:00||;True|2024-09-27T18:45:48.2812860+08:00||;True|2024-09-27T18:10:25.5697467+08:00||;True|2024-09-27T17:39:06.3169139+08:00||;True|2024-09-27T17:30:14.1043193+08:00||;True|2024-09-27T16:02:09.0703159+08:00||;True|2024-09-27T15:53:05.1789245+08:00||;True|2024-09-27T15:32:52.1934490+08:00||;True|2024-09-27T13:51:24.9197626+08:00||;True|2024-09-27T13:48:17.2817346+08:00||;True|2024-09-27T11:51:46.8193040+08:00||;True|2024-09-27T10:58:33.1059648+08:00||;True|2024-09-27T10:37:35.0336563+08:00||;False|2024-09-27T10:31:52.6302264+08:00||;True|2024-09-26T19:50:15.5513195+08:00||;True|2024-09-26T19:47:14.0781788+08:00||;True|2024-09-26T19:01:26.5428388+08:00||;True|2024-09-26T18:35:28.7455319+08:00||;True|2024-09-26T18:24:30.8084807+08:00||;True|2024-09-26T18:20:47.3005460+08:00||;True|2024-09-26T18:04:39.8012913+08:00||;True|2024-09-26T17:48:13.8526872+08:00||;True|2024-09-26T16:08:20.1746970+08:00||;True|2024-09-26T16:01:01.1501975+08:00||;False|2024-09-26T16:00:34.1516745+08:00||;True|2024-09-26T14:33:03.4007570+08:00||;True|2024-09-25T19:14:27.8906774+08:00||;True|2024-09-25T18:57:40.1435131+08:00||;True|2024-09-25T17:38:44.0915841+08:00||;True|2024-09-25T15:33:58.4630618+08:00||;True|2024-09-25T15:10:31.3022063+08:00||;False|2024-09-25T14:14:40.9640545+08:00||;True|2024-09-25T10:09:32.2558600+08:00||;True|2024-09-25T09:59:17.1525160+08:00||;False|2024-09-25T09:57:58.7265103+08:00||;False|2024-09-25T09:53:36.7732713+08:00||;False|2024-09-24T18:40:10.0166224+08:00||;True|2024-09-24T08:59:56.1995425+08:00||;True|2024-09-23T18:07:54.7222163+08:00||;True|2024-09-23T17:23:57.7568406+08:00||;True|2024-09-23T16:28:49.3169826+08:00||;True|2024-09-23T15:57:31.8052490+08:00||;True|2024-09-23T11:47:21.1445419+08:00||;True|2024-09-23T09:24:36.0732229+08:00||;True|2024-09-21T11:59:19.0549926+08:00||;True|2024-09-21T11:24:32.4451752+08:00||;True|2024-09-21T10:39:11.5297411+08:00||;True|2024-09-20T18:24:31.7827684+08:00||;True|2024-09-19T17:55:53.1666689+08:00||;True|2024-09-19T17:42:47.9061485+08:00||;True|2024-09-19T16:08:21.7225571+08:00||;False|2024-09-19T14:15:42.9318446+08:00||;True|2024-09-19T11:20:03.5567568+08:00||;True|2024-09-18T11:35:18.1509724+08:00||;</History>
<LastFailureDetails />
</PropertyGroup>
</Project>

@ -9,6 +9,7 @@ using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Owin.Security.Provider;
using Org.BouncyCastle.Crypto;
using Org.BouncyCastle.Ocsp;
using SqlSugar;
namespace DS.WMS.OpApi.Controllers
@ -457,5 +458,33 @@ namespace DS.WMS.OpApi.Controllers
return await _bookingSlotStockService.BookingSlotStock(model);
}
#endregion
#region 保存舱位预甩或换舱
/// <summary>
/// 保存舱位预甩或换舱
/// </summary>
/// <param name="req">请求详情</param>
/// <returns>返回回执</returns>
[HttpPost]
[Route("SaveRolling")]
public async Task<DataResult> SaveRolling([FromBody] BookingSlotRollingDto req)
{
return await _bookingSlotService.SaveRolling(req);
}
#endregion
#region 获取舱位预甩或换舱列表
/// <summary>
/// 获取舱位预甩或换舱列表
/// </summary>
/// <param name="slotId">舱位ID</param>
/// <returns>返回列表</returns>
[HttpGet]
[Route("GetRollingList")]
public async Task<DataResult<List<BookingSlotRollingDto>>> GetRollingList([FromQuery] long slotId)
{
return await _bookingSlotService.GetRollingList(slotId);
}
#endregion
}
}

Loading…
Cancel
Save