Exemplo n.º 1
0
        public void SyncSHD()
        {
            //经gamal确认,款到发货、货到付款订单审核时均生成送货单记录
            //if (CurrentSO.BaseInfo.PayWhenReceived == false)
            //{
            //    return;
            //}
            var soItem = CurrentSO.Items;

            soItem = soItem.Where(p => p.InventoryType == ProductInventoryType.Company || p.InventoryType == ProductInventoryType.TwoDoor).ToList();
            //同步送货单

            foreach (var item in soItem)
            {
                //大件一个商品一个送货单。
                ERPSHDInfo erpinfo = new ERPSHDInfo();
                erpinfo.SHDTypeMemo  = "送货单";
                erpinfo.RefOrderNo   = SOSysNo.ToString();
                erpinfo.RefOrderType = "销售订单";
                erpinfo.SysMemo      = erpinfo.RefOrderNo + "/" + erpinfo.RefOrderType;
                erpinfo.ZDR          = ServiceContext.Current.UserSysNo;
                erpinfo.ZDSJ         = DateTime.Now;
                erpinfo.ZXR          = ServiceContext.Current.UserSysNo;
                erpinfo.ZXSJ         = DateTime.Now;
                erpinfo.SHDItemList  = new List <ERPSHDItem>();
                ERPSHDItem erpitem = new ERPSHDItem();
                erpitem.ProductSysNo = item.ProductSysNo;
                erpitem.SL           = item.Quantity;
                erpinfo.SHDItemList.Add(erpitem);
                //ObjectFactory<ISyncERPBizRecord>.Instance.CreateSHD(erpinfo);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// 返仓单
        /// </summary>
        /// <param name="shdInfo"></param>
        /// <returns></returns>
        public ERPSHDInfo CreateSHD_FC(ERPSHDInfo shdInfo)
        {
            shdInfo.JLBH        = erpDA.GetJLBH("SHD_SH");
            shdInfo.DJLX        = 0;
            shdInfo.SHDTypeMemo = "返仓单";
            if (shdInfo.SHRQ == null)
            {
                shdInfo.SHRQ = DateTime.Now;
            }
            if (shdInfo.SHSJ == null)
            {
                shdInfo.SHSJ = "全天";
            }
            shdInfo.BZ = "B2C_" + shdInfo.RefOrderNo + " " + shdInfo.RefOrderType + " " + shdInfo.SHDTypeMemo;

            erpDA.CreateSHD(shdInfo);

            int itemINX = 1;

            foreach (ERPSHDItem shdItem in shdInfo.SHDItemList)
            {
                shdItem.JLBH      = shdInfo.JLBH;
                shdItem.INX       = itemINX++;
                shdItem.ERP_SP_ID = shdItem.ERP_SP_ID.HasValue ? shdItem.ERP_SP_ID : 0;
                erpDA.CreateSHDItem(shdItem);
            }

            ERPSHDInfo result = erpDA.GetSHDInfoByJLBH((int)shdInfo.JLBH);

            return(shdInfo);
        }
Exemplo n.º 3
0
        /// <summary>
        /// 创建送货单
        /// </summary>
        /// <param name="adjustInfo"></param>
        /// <returns></returns>
        public void CreateSHD(ERPSHDInfo shdInfo)
        {
            DataCommand cmd = DataCommandManager.GetDataCommand("ERP_CreateSHD");

            cmd.SetParameterValue("@JLBH", shdInfo.JLBH);
            cmd.SetParameterValue("@BDJK", shdInfo.BDJK);
            cmd.SetParameterValue("@BZ", shdInfo.BZ);
            cmd.SetParameterValue("@DEPTID", shdInfo.DEPTID);
            cmd.SetParameterValue("@DEPTID_BC", shdInfo.DEPTID_BC);
            cmd.SetParameterValue("@DJLX", shdInfo.DJLX);
            cmd.SetParameterValue("@KCDD_BR", shdInfo.KCDD_BR);
            cmd.SetParameterValue("@KHID", shdInfo.KHID);
            cmd.SetParameterValue("@QHBZ", shdInfo.QHBZ);
            cmd.SetParameterValue("@SHRQ", shdInfo.SHRQ);
            cmd.SetParameterValue("@SHSJ", shdInfo.SHSJ);
            cmd.SetParameterValue("@WGBJ", shdInfo.WGBJ);
            cmd.SetParameterValue("@XHHD", shdInfo.XHHD);
            cmd.SetParameterValue("@ZDR", shdInfo.ZDR);
            cmd.SetParameterValue("@ZDSJ", shdInfo.ZDSJ);
            cmd.SetParameterValue("@ZXR", shdInfo.ZXR);
            cmd.SetParameterValue("@ZXSJ", shdInfo.ZXSJ);

            cmd.ExecuteNonQuery();

            DataCommand cmd2 = DataCommandManager.GetDataCommand("ECC_InsertSHDMapping");

            cmd2.SetParameterValue("@SHDSysNo", shdInfo.JLBH);
            cmd2.SetParameterValue("@RefOrderNo", shdInfo.RefOrderNo);
            cmd2.SetParameterValue("@RefOrderType", shdInfo.RefOrderType);

            cmd2.ExecuteNonQuery();
        }
Exemplo n.º 4
0
        /// <summary>
        /// 获取送货单据信息
        /// </summary>
        /// <param name="jlbh"></param>
        /// <returns></returns>
        public ERPSHDInfo GetSHDInfoByJLBH(int jlbh)
        {
            ERPSHDInfo shdInfo = erpDA.GetSHDInfoByJLBH(jlbh);

            if (shdInfo != null)
            {
                shdInfo.SHDItemList = erpDA.GetSHDItemByJLBH(jlbh);
            }

            return(shdInfo);
        }
Exemplo n.º 5
0
        private void SyncERPAction(RMARegisterInfo registerEntity)
        {
            bool isInventoryTypeInvalid = registerEntity.BasicInfo.InventoryType != ProductInventoryType.Company && registerEntity.BasicInfo.InventoryType != ProductInventoryType.TwoDoor;
            bool isERPStatusInvalid     = registerEntity.BasicInfo.ERPStatus != ERPReturnType.UnReturn;
            bool isRequestTypeInvalid   = registerEntity.RequestType != RMARequestType.Return && registerEntity.RequestType != RMARequestType.Exchange;

            if (isInventoryTypeInvalid ||
                isERPStatusInvalid ||
                isRequestTypeInvalid)
            {
                return;
            }
            ERPSHDInfo erpinfo = new ERPSHDInfo();

            erpinfo.RefOrderNo   = registerEntity.SysNo.Value.ToString();
            erpinfo.RefOrderType = "退款单件";
            erpinfo.SysMemo      = erpinfo.RefOrderNo + "/" + erpinfo.RefOrderType;
            erpinfo.ZDR          = ServiceContext.Current.UserSysNo;
            erpinfo.ZDSJ         = DateTime.Now;
            erpinfo.ZXR          = ServiceContext.Current.UserSysNo;
            erpinfo.ZXSJ         = DateTime.Now;
            erpinfo.SHDItemList  = new List <ERPSHDItem>();
            ERPSHDItem erpitem = new ERPSHDItem();

            erpitem.ProductSysNo = registerEntity.BasicInfo.ProductSysNo;
            erpitem.SL           = 1;
            erpinfo.SHDItemList.Add(erpitem);

            //if (registerEntity.RequestType == RMARequestType.Exchange)
            //{
            //    ObjectFactory<ISyncERPBizRecord>.Instance.CreateSHD_TCWF(erpinfo);
            //}
            //else if (registerEntity.RequestType == RMARequestType.Return)
            //{
            //    ObjectFactory<ISyncERPBizRecord>.Instance.CreateSHD_FC(erpinfo);
            //}
            //更新ERPStatus
            //registerDA.SyncERP(registerEntity.SysNo.Value);
        }