Example #1
0
        /// <summary>
        /// 对象转换
        /// </summary>
        /// <param name="wmsVmiInboundDataInfo"></param>
        /// <returns></returns>
        private static BFDAVmiInboundDataInfo GetBFDAVMIInfo(WmsTranOutInfo wmsTranOutInfo)
        {
            var runsheetInfo = new WmsVmiAsnRunsheetDetailBLL().GetList(string.Format(" SOURCEORDERCODE='{0}' AND WMSSOURCEKEY='{1}' AND PARTNO='{2}' AND VALID_FLAG=1 ", wmsTranOutInfo.RunsheetNo, wmsTranOutInfo.SourceOrderCode, wmsTranOutInfo.PartNo), "").FirstOrDefault();

            if (runsheetInfo != null)
            {
                wmsTranOutInfo.ItemNumber = runsheetInfo.Wmslinenumber;
            }

            BFDAVmiInboundDataInfo BfdaInfo = new BFDAVmiInboundDataInfo();

            ///TODO:此处获取时间默认值为0001-01-01,对方系统是否能够接收,待测

            BfdaInfo.SourceOrderCode = wmsTranOutInfo.RunsheetNo;                                     ///原始单据号

            BfdaInfo.SourceOrderType = wmsTranOutInfo.SourceOrderType.GetValueOrDefault().ToString(); ///原始单据类型
            BfdaInfo.PartNo          = wmsTranOutInfo.PartNo;                                         ///物料编号
            BfdaInfo.SupplierCode    = wmsTranOutInfo.SupplierNum;                                    ///供应商代码
            BfdaInfo.SupplierName    = wmsTranOutInfo.SupplierName;                                   ///供应商名称
            BfdaInfo.DeliveryQty     = wmsTranOutInfo.DeliveryQty.GetValueOrDefault().ToString();     ///实收数量

            BfdaInfo.Wmssourcekey  = wmsTranOutInfo.SourceOrderCode;                                  ///WMS单号
            BfdaInfo.Wmslinenumber = wmsTranOutInfo.ItemNumber;                                       ///WMS行号

            BfdaInfo.VmiWarehouseCode = wmsTranOutInfo.WmNo;                                          ///VMI仓库代码
            BfdaInfo.Werks            = wmsTranOutInfo.Plant;                                         ///工厂代码

            return(BfdaInfo);
        }
 public long InsertInfo(WmsTranOutInfo info)
 {
     return(dal.Add(info));
 }
Example #3
0
        /// <summary>
        /// 037 vmi Create By Xue 未完成
        /// </summary>
        /// <param name="tranDetailsInfo"></param>
        private string CreateVmiTranData(TranDetailsInfo tranDetailsInfo, SupplierInfo supplierInfo, WarehouseInfo warehouseInfo)
        {
            ///若未启用外部供应商系统,TODO:考虑内部供应商模块如何处理
            if (string.IsNullOrEmpty(vmiTranDataEnableFlag) || vmiTranDataEnableFlag.ToLower() != "true")
            {
                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);
            }

            if (tranDetailsInfo.TranOrderType.GetValueOrDefault() != 4010)
            {
                return(string.Empty);
            }

            WmsTranOutInfo wmsTranOutInfo = new WmsTranOutInfo();

            // planmod转换为ordertype
            switch ((PullModeConstants)tranDetailsInfo.RunsheetType)
            {
            case PullModeConstants.Twd:
                wmsTranOutInfo.SourceOrderType = (int)WmsOrderTypeConstants.Twd;
                break;

            case PullModeConstants.Plan:
                wmsTranOutInfo.SourceOrderType = (int)WmsOrderTypeConstants.Plan;
                break;

            case PullModeConstants.Jis:
                wmsTranOutInfo.SourceOrderType = (int)WmsOrderTypeConstants.Jis;
                break;
            }


            wmsTranOutInfo.SourceOrderCode = tranDetailsInfo.TranNo;
            wmsTranOutInfo.RunsheetNo      = tranDetailsInfo.RunsheetNo;
            wmsTranOutInfo.WmNo            = tranDetailsInfo.WmNo;
            wmsTranOutInfo.Plant           = tranDetailsInfo.Plant;

            wmsTranOutInfo.PartNo      = tranDetailsInfo.PartNo;
            wmsTranOutInfo.DeliveryQty = tranDetailsInfo.ActualQty;
            wmsTranOutInfo.ProcessFlag = (int)ProcessFlagConstants.Untreated;
            wmsTranOutInfo.CreateUser  = loginUser;
            return(WmsTranOutDAL.GetInsertSql(wmsTranOutInfo));
        }