同步金蝶-代码处理提交

This commit is contained in:
tongfei
2023-12-15 14:04:26 +08:00
parent 6c4c973c16
commit d6c4208531
15 changed files with 548 additions and 50 deletions

View File

@@ -1,6 +1,7 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using WMS.Web.Domain.Values;
@@ -73,6 +74,12 @@ namespace WMS.Web.Domain.Entitys
/// 仓位ID
/// </summary>
public int SubStockId { get; set; }
/// <summary>
/// ERP明细
/// </summary>
public List<InStockErpDetails> ErpDetails { get; set; } = new List<InStockErpDetails>();
/// <summary>
/// 明细
/// </summary>
@@ -125,5 +132,44 @@ namespace WMS.Web.Domain.Entitys
}
this.BillNo = "RK" + idStr;
}
/// <summary>
/// 同步金蝶(成功)
/// </summary>
/// <param name="erpDetailId"></param>
/// <param name="operateId"></param>
/// <param name="erpBillNo"></param>
public void SyncSuccess(int erpDetailId, int operateId, string erpBillNo)
{
var erpd = this.ErpDetails.Where(s=>s.ErpDetailId==erpDetailId).FirstOrDefault();
erpd.SuccessSync = SyncStatus.Success;
erpd.ErpSyncBillNo = erpBillNo;
//所有erp明细同步成功才是整个单据成功
if (this.ErpDetails.Where(w => w.SuccessSync == SyncStatus.Success).Count() == this.Details.Count())
{
this.SuccessSync = SyncStatus.Success;
this.Remark = "";
}
this.OperateId = operateId;
this.SyncTime = DateTime.Now;
}
/// <summary>
/// 同步金蝶(失败)
/// </summary>
/// <param name="remark"></param>
/// <param name="erpDetailId"></param>
/// <param name="operateId"></param>
/// <param name="syncStatus"></param>
public void SyncFail(string remark, int erpDetailId, int operateId, SyncStatus syncStatus)
{
var erpd = this.ErpDetails.FirstOrDefault(w => w.ErpDetailId == erpDetailId);
erpd.SuccessSync = syncStatus;
this.SuccessSync = SyncStatus.Fail;
this.Remark = remark;
this.OperateId = operateId;
this.SyncTime = DateTime.Now;
}
}
}

View File

@@ -2,6 +2,8 @@
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.Text;
using WMS.Web.Core;
using WMS.Web.Domain.Values;
namespace WMS.Web.Domain.Entitys
{
@@ -10,12 +12,12 @@ namespace WMS.Web.Domain.Entitys
/// </summary>
[Serializable]
[Table("t_wms_instock_details")]
public class InStockDetails
public class InStockDetails : EntityBase
{
/// <summary>
/// ID
/// </summary>
public int Id { get; set; }
public override int Id { get; set; }
/// <summary>
/// 单据头ID
/// </summary>
@@ -43,30 +45,14 @@ namespace WMS.Web.Domain.Entitys
/// 供应商ID
/// </summary>
public int SupplierId { get; set; }
///// <summary>
///// 组织ID
///// </summary>
//public int OrgId { get; set; }
///// <summary>
///// 组织编码
///// </summary>
//public string OrgCode { get; set; }
/// <summary>
/// 物料ID
/// </summary>
public int MaterialId { get; set; }
///// <summary>
///// 仓库编码
///// </summary>
//public string StockCode { get; set; }
///// <summary>
///// 仓位ID
///// </summary>
//public int SubStockId { get; set; }
/// <summary>
/// 数量
/// </summary>
public decimal Qty { get; set; }
public decimal Qty { get; set; }
/// <summary>
/// 序列号集

View File

@@ -0,0 +1,57 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.Text;
using WMS.Web.Core;
using WMS.Web.Domain.Values;
namespace WMS.Web.Domain.Entitys
{
/// <summary>
/// wms入库单ERP明细
/// </summary>
[Serializable]
[Table("t_wms_instock_erp_details")]
public class InStockErpDetails : EntityBase
{
/// <summary>
/// ID
/// </summary>
public override int Id { get; set; }
/// <summary>
/// 单据头ID
/// </summary>
public int Fid { get; set; }
/// <summary>
/// 对应金蝶的明细ID
/// </summary>
public int ErpDetailId { get; set; }
/// <summary>
/// 来源单号
/// </summary>
public string SourceBillNo { get; set; }
/// <summary>
/// 物料ID
/// </summary>
public int MaterialId { get; set; }
/// <summary>
/// 数量
/// </summary>
public decimal Qty { get; set; }
/// <summary>
/// 同步成功或者失败 默认是失败状态
/// </summary>
public SyncStatus SuccessSync { get; set; } = SyncStatus.Fail;
/// <summary>
/// 同步到金蝶后金蝶的单据Id
/// </summary>
public string ErpSyncBillNo { get; set; }
}
}