/// <summary> /// 对象转换 /// </summary> /// <param name="srmTranOutInfo"></param> /// <returns></returns> private static BFDATranOutInfo GetSrmTranOutInfo(SrmTranOutInfo srmTranOutInfo) { BFDATranOutInfo info = new BFDATranOutInfo(); ///原始单据号 info.SourceOrderCode = srmTranOutInfo.SourceOrderCode; ///原始单据类型 info.SourceOrderType = srmTranOutInfo.SourceOrderType.GetValueOrDefault().ToString(); ///物料编号 info.PartNo = srmTranOutInfo.PartNo; ///实收数量 info.DeliveryQty = srmTranOutInfo.DeliveryQty.GetValueOrDefault().ToString(); /// return(info); }
public long InsertInfo(SrmTranOutInfo info) { return(dal.Add(info)); }
/// <summary> /// CreateSrmTranData /// </summary> /// <param name="tranDetailsInfo"></param> private string CreateSrmTranData(TranDetailsInfo tranDetailsInfo, SupplierInfo supplierInfo, WarehouseInfo warehouseInfo) { ///若未启用外部供应商系统,TODO:考虑内部供应商模块如何处理 if (string.IsNullOrEmpty(srmTranDataEnableFlag) || srmTranDataEnableFlag.ToLower() != "true") { return(string.Empty); } ///若不是物料供应商则不需要生成记录 if (supplierInfo.SupplierType.GetValueOrDefault() != (int)SupplierTypeConstants.MaterialSupplier) { return(string.Empty); } ///交易记录NULL,肯定生成不了记录 if (tranDetailsInfo == null) { return(string.Empty); } if (warehouseInfo == null) { return(string.Empty); } ///不是RDC类型的仓库的数据不发送给SRM if (warehouseInfo.WarehouseType.GetValueOrDefault() != (int)WarehouseTypeConstants.RDC) { return(string.Empty); } ///非物料入库不传SRM if (tranDetailsInfo.TranType.GetValueOrDefault() != (int)WmmTranTypeConstants.Inbound) { return(string.Empty); } ///SRM单据类型 int orderType = 0; switch (tranDetailsInfo.TranOrderType.GetValueOrDefault()) { case (int)InboundTypeConstants.RebateInbound + 1000: if (string.IsNullOrEmpty(rebateInboundReceiveReleaseToSrm) || rebateInboundReceiveReleaseToSrm.ToLower() != "true") { return(string.Empty); } orderType = (int)SrmOrderTypeConstants.Reserve; ///TODO:返利 break; ///采购订单 case (int)InboundTypeConstants.PurchaseOrder + 1000: orderType = (int)SrmOrderTypeConstants.Purchase; break; ///预留 case (int)InboundTypeConstants.ReserveInbound + 1000: orderType = (int)SrmOrderTypeConstants.Reserve; break; default: switch (tranDetailsInfo.RunsheetType.GetValueOrDefault()) { case (int)PullModeConstants.Jis: orderType = (int)SrmOrderTypeConstants.Jis; break; case (int)PullModeConstants.Plan: orderType = (int)SrmOrderTypeConstants.Plan; break; case (int)PullModeConstants.Twd: orderType = (int)SrmOrderTypeConstants.Twd; break; default: return(string.Empty); } break; } /// SrmTranOutInfo srmTranOutInfo = new SrmTranOutInfo(); srmTranOutInfo.SourceOrderCode = tranDetailsInfo.TranNo;///TODO:SRM要哪个编号? srmTranOutInfo.SourceOrderType = orderType; srmTranOutInfo.PartNo = tranDetailsInfo.PartNo; srmTranOutInfo.DeliveryQty = tranDetailsInfo.ActualQty; srmTranOutInfo.ProcessFlag = (int)ProcessFlagConstants.Untreated; srmTranOutInfo.CreateUser = loginUser; return(SrmTranOutDAL.GetInsertSql(srmTranOutInfo)); }