Exemple #1
0
        public void CancelHandleRMA(RMAInfo rmaInfo, SessionInfo sInfo)
        {
            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                if (this.GetRMACurrentStatus(rmaInfo.SysNo) != (int)AppEnum.RMAStatus.Handled)
                {
                    throw new BizException("This rma sheet is not handled now,can't cancel handle");
                }
                //如果存在退货单,则作废
                ROInfo roInfo = ROManager.GetInstance().LoadROfromRMA(rmaInfo.SysNo);
                if (roInfo != null)
                {
                    ROManager.GetInstance().AbandonRO(roInfo);
                    LogManager.GetInstance().Write(new LogInfo(roInfo.SysNo, (int)AppEnum.LogType.Sale_RO_Abandon, sInfo));
                }
                Hashtable paramHash = new Hashtable(4);
                paramHash.Add("Status", rmaInfo.Status);
                paramHash.Add("RMATime", rmaInfo.RMATime);
                paramHash.Add("RMAUserSysNo", rmaInfo.RMAUserSysNo);
                paramHash.Add("SysNo", rmaInfo.SysNo);
                this.UpdateRMAMaster(paramHash);
                LogManager.GetInstance().Write(new LogInfo(rmaInfo.SysNo, (int)AppEnum.LogType.Sale_RMA_CancelHandle, sInfo));
                scope.Complete();
            }
        }
Exemple #2
0
        public void HandleRMA(RMAInfo rmaInfo, SessionInfo sInfo)
        {
            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                if (this.GetRMACurrentStatus(rmaInfo.SysNo) != (int)AppEnum.RMAStatus.Received)
                {
                    throw new BizException("This rma sheet is not received now,can't be handled");
                }
                Hashtable paramHash = new Hashtable(4);
                paramHash.Add("Status", rmaInfo.Status);
                paramHash.Add("RMATime", rmaInfo.RMATime);
                paramHash.Add("RMAUserSysNo", rmaInfo.RMAUserSysNo);
                paramHash.Add("SysNo", rmaInfo.SysNo);
                this.UpdateRMAMaster(paramHash);
                //如果有退货类型的商品,自动生成退货单
                foreach (RMAItemInfo rmaItem in rmaInfo.ItemHash.Values)
                {
                    if (rmaItem.RMAType == (int)AppEnum.RMAType.Return)
                    {
                        ROInfo roInfo = ROManager.GetInstance().BuildROFromRMA(rmaInfo);
                        ROManager.GetInstance().AddRO(roInfo);
                        LogManager.GetInstance().Write(new LogInfo(roInfo.SysNo, (int)AppEnum.LogType.Sale_RO_Create, sInfo));
                        break;
                    }
                }
                LogManager.GetInstance().Write(new LogInfo(rmaInfo.SysNo, (int)AppEnum.LogType.Sale_RMA_Handle, sInfo));
                scope.Complete();
            }
        }
Exemple #3
0
        public ROInfo BuildROFromRMA(RMAInfo rmaInfo)
        {
            ROInfo roInfo = new ROInfo();
            SOInfo soInfo = SaleManager.GetInstance().LoadSO(rmaInfo.SOSysNo);

            roInfo.RMASysNo        = rmaInfo.SysNo;
            roInfo.CreateTime      = DateTime.Now;
            roInfo.CreateUserSysNo = rmaInfo.RMAUserSysNo;
            roInfo.StockSysNo      = soInfo.StockSysNo;
            roInfo.Status          = (int)AppEnum.ROStatus.Origin;
            roInfo.ReceiveName     = soInfo.ReceiveName;
            roInfo.ReceivePhone    = soInfo.ReceivePhone;
            roInfo.ReceiveAddress  = soInfo.ReceiveAddress;
            roInfo.PointAmt        = 0;
            roInfo.CashAmt         = 0m;
            roInfo.RedeemAmt       = 0m;
            Hashtable leftHash       = RMAManager.GetInstance().GetLeftRMAQty(rmaInfo.SOSysNo);
            decimal   originCashAmt  = 0m;
            int       originPointAmt = 0;

            foreach (RMAItemInfo rmaItem in rmaInfo.ItemHash.Values)
            {
                if (rmaItem.RMAType == (int)AppEnum.RMAType.Return)
                {
                    ROItemInfo roItem = new ROItemInfo();
                    roItem.ProductSysNo = rmaItem.ProductSysNo;
                    roItem.Quantity     = rmaItem.RMAQty;
                    if (roItem.Quantity > (int)leftHash[(int)roItem.ProductSysNo])
                    {
                        throw new BizException("Too many item(" + roItem.ProductSysNo + ") to return");
                    }
                    foreach (SOItemInfo soItem in soInfo.ItemHash.Values)
                    {
                        if (soItem.ProductSysNo == rmaItem.ProductSysNo)
                        {
                            roItem.Price           = soItem.Price;
                            roItem.Point           = soItem.Point;
                            roItem.Cost            = soItem.Cost;
                            roItem.Weight          = soItem.Weight;
                            roItem.RefundPoint     = soItem.Point;
                            roItem.RefundCash      = soItem.Price;
                            roItem.ReturnPriceType = (int)AppEnum.ReturnPriceType.InputPrice;
                            roItem.ReturnType      = (int)AppEnum.ReturnType.SecondHand;
                            originCashAmt         += roItem.Price * roItem.Quantity;
                            originPointAmt        += roItem.Point * roItem.Quantity;
                            break;
                        }
                    }
                    roInfo.ItemHash.Add(roItem.ProductSysNo, roItem);
                }
            }
            roInfo.OriginPointAmt = originPointAmt;
            roInfo.OriginCashAmt  = originCashAmt;

            return(roInfo);
        }
Exemple #4
0
        public void ReturnRO(ROInfo roInfo)
        {
            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                if (this.GetROCurrentStatus(roInfo.SysNo) != (int)AppEnum.ROStatus.Audited)
                {
                    throw new BizException("This RO is not Audited now ,can't be returned");
                }
                roInfo.Status = (int)AppEnum.ROStatus.Returned;
                //update ro status
                Hashtable paramHash = new Hashtable(4);
                paramHash.Add("Status", roInfo.Status);
                paramHash.Add("ReturnTime", roInfo.ReturnTime);
                paramHash.Add("ReturnUserSysNo", roInfo.ReturnUserSysNo);
                paramHash.Add("SysNo", roInfo.SysNo);
                this.UpdateROMaster(paramHash);
                //update inventory
                foreach (ROItemInfo roItem in roInfo.ItemHash.Values)
                {
                    //UnitCostManager.GetInstance().SetCost(roItem.ProductSysNo, roItem.Quantity, roItem.Cost); //Serious bug 2007-07-21
                    //退货时不影响一手商品的成本,只需要修改二手商品的成本
                    UnitCostManager.GetInstance().SetCost(roItem.ReturnSysNo, roItem.Quantity, roItem.Cost);
                    InventoryManager.GetInstance().SetInStockQty(roInfo.StockSysNo, roItem.ReturnSysNo, roItem.Quantity);
                }
                //update customer score
                RMAInfo oRMA = RMAManager.GetInstance().LoadMaster(roInfo.RMASysNo);
                //先将销售单所得积分加上
                PointManager.GetInstance().DoDelayPointSingle(oRMA.SOSysNo);
                //然后减去退货对应积分
                if (roInfo.PointAmt != 0)
                {
                    PointManager.GetInstance().SetScore(oRMA.CustomerSysNo, roInfo.PointAmt * (-1), (int)AppEnum.PointLogType.ReturnProduct, roInfo.SysNo.ToString());
                }
                //生成收款单
                //如果无有效的收款单-->生成soincome(normal, origin)
                SOIncomeInfo soIncome = SOIncomeManager.GetInstance().LoadValid((int)AppEnum.SOIncomeOrderType.RO, roInfo.SysNo);
                if (soIncome == null)//无有效收款单,生成收款单
                {
                    soIncome                 = new SOIncomeInfo();
                    soIncome.OrderType       = (int)AppEnum.SOIncomeOrderType.RO;
                    soIncome.OrderSysNo      = roInfo.SysNo;
                    soIncome.OrderAmt        = soIncome.IncomeAmt = Util.TruncMoney(roInfo.CashAmt + roInfo.RedeemAmt);
                    soIncome.IncomeStyle     = (int)AppEnum.SOIncomeStyle.Normal;
                    soIncome.IncomeUserSysNo = roInfo.ReturnUserSysNo;
                    soIncome.IncomeTime      = DateTime.Now;
                    soIncome.Status          = (int)AppEnum.SOIncomeStatus.Origin;
                    SOIncomeManager.GetInstance().Insert(soIncome);
                }
                scope.Complete();
            }
        }
Exemple #5
0
        public string GetRMASnapShot(RMAInfo oParam)
        {
            StringBuilder sb = new StringBuilder();

            if (oParam.ItemHash.Count > 0)
            {
                sb.Append("<table class=\"GridViewStyle\" cellspacing=\"0\" rules=\"all\" border=\"1\" id=\"Table99\" style=\"width: 100%;border-collapse: collapse;\">");
                sb.Append("	<tr class=\"GridViewHeaderStyle\">");
                sb.Append("	 <td>" + oParam.RMAID + "</td>");
                sb.Append("	 <td>商品名称</td>");
                sb.Append("  <td>返修数量</td>");
                sb.Append("	 <td>返修类型</td>");
                sb.Append("  <td>返修原因</td>");
                sb.Append(" </tr>");
                Hashtable SysnoHt = new Hashtable();
                foreach (RMAItemInfo item in oParam.ItemHash.Values)
                {
                    SysnoHt.Add(item.ProductSysNo, item.ProductSysNo);
                }
                Hashtable PbHt = Icson.BLL.Basic.ProductManager.GetInstance().GetProductBoundle(SysnoHt);
                int       i    = 1;
                foreach (RMAItemInfo item in oParam.ItemHash.Values)
                {
                    if ((i % 2) != 0)
                    {
                        sb.Append("<tr class=\"GridViewRowStyle\" onmouseout=\"this.style.backgroundColor=currentcolor,this.style.fontWeight=&quot;&quot;;\" onmouseover=\"currentcolor=this.style.backgroundColor;this.style.backgroundColor=&quot;#d8e3e7&quot;,this.style.fontWeight=&quot;&quot;;jquery_Tools_showthis(this);\">");
                    }
                    else
                    {
                        sb.Append("<tr class=\"GridViewAlternatingRowStyle\" onmouseout=\"this.style.backgroundColor=currentcolor,this.style.fontWeight=&quot;&quot;;\" onmouseover=\"currentcolor=this.style.backgroundColor;this.style.backgroundColor=&quot;#d8e3e7&quot;,this.style.fontWeight=&quot;&quot;;jquery_Tools_showthis(this);\">");
                    }
                    i++;
                    foreach (ProductBasicInfo PbInfo in PbHt.Values)
                    {
                        if (PbInfo.SysNo == item.ProductSysNo)
                        {
                            sb.Append("<td>");
                            sb.Append(PbInfo.ProductID);
                            sb.Append("</td>");
                            sb.Append("<td>");
                            sb.Append(PbInfo.ProductName);
                            sb.Append("</td>");
                            break;
                        }
                    }
                    sb.Append(" <td>" + item.RMAQty.ToString() + "</td>");
                    sb.Append(" <td>" + AppEnum.GetRMAType(item.RMAType) + "</td>");
                    sb.Append(" <td>" + item.RMADesc + "</td>");
                    sb.Append("</tr>");
                }
                sb.Append("</table>");
            }
            return(sb.ToString());
        }
Exemple #6
0
        public RMAInfo BuildRMAfromSO(int soSysNo)
        {
            if (!this.IfExistOpenedRMA(soSysNo))
            {
                RMAInfo rmaInfo = new RMAInfo();
                SOInfo  soInfo  = SaleManager.GetInstance().LoadSO(soSysNo);
                if (soInfo != null && soInfo.Status == (int)AppEnum.SOStatus.OutStock)
                {
                    rmaInfo.SOSysNo       = soInfo.SysNo;
                    rmaInfo.CustomerSysNo = soInfo.CustomerSysNo;
                    if (soInfo.ItemHash.Count > 0)
                    {
                        foreach (SOItemInfo soItem in soInfo.ItemHash.Values)
                        {
                            RMAItemInfo rmaItem = new RMAItemInfo();
                            rmaItem.ProductSysNo = soItem.ProductSysNo;
                            rmaItem.RMAType      = (int)AppEnum.RMAType.Unsure;
                            rmaItem.RMAQty       = soItem.Quantity;
                            rmaInfo.ItemHash.Add(rmaItem.ProductSysNo, rmaItem);

                            string    SOItemPODesc = "";
                            Hashtable ht           = SaleManager.GetInstance().LoadSOItemPOList(soItem.SysNo);
                            if (ht != null)
                            {
                                foreach (SOItemPOInfo soItemPO in ht.Keys)
                                {
                                    if (soItemPO.POSysNo > 0)
                                    {
                                        POInfo poInfo      = PurchaseManager.GetInstance().LoadPO(soItemPO.POSysNo);
                                        int    VendorSysNo = poInfo.VendorSysNo;
                                        SOItemPODesc += "采购单号:<a href=\"javascript:openWindowS2('../Purchase/POSheet.aspx?sysno=" + soItemPO.POSysNo + "&opt=view')" + "\" >" + soItemPO.POSysNo + "</a>, " + "供应商编号:<a href=\"javascript:openWindowS2('../Basic/VendorOpt.aspx?sysno=" + VendorSysNo + "&opt=update')" + "\">" + VendorSysNo + "</a><br>";
                                    }
                                    else if (soItemPO.ProductIDSysNo > 0)
                                    {
                                        SOItemPODesc += "商品序列号:<a href=\"javascript:openWindowS2('../Basic/ProductID.aspx?sysno=" + soItemPO.ProductIDSysNo + "')" + "\" >" + soItemPO.ProductIDSysNo + "</a><br>";
                                    }
                                }
                            }
                            rmaItem.SOItemPODesc = SOItemPODesc;
                        }
                    }
                }
                else
                {
                    rmaInfo = null;
                }
                return(rmaInfo);
            }
            else
            {
                throw new BizException("本销售单已经存在一张保修单在处理中,其间您不能再提交新的保修申请,请联系ORS商城客服");
            }
        }
Exemple #7
0
        private void InsertMaster(RMAInfo oRMA)
        {
            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                new RMADac().InsertMaster(oRMA);
                scope.Complete();
            }
        }
Exemple #8
0
        public RMAInfo LoadMaster(int rmaSysNo)
        {
            string  sql = "select * from RMA_Master where sysno =" + rmaSysNo;
            DataSet ds  = SqlHelper.ExecuteDataSet(sql);

            if (!Util.HasMoreRow(ds))
            {
                return(null);
            }
            RMAInfo oRMA = new RMAInfo();

            this.map(oRMA, ds.Tables[0].Rows[0]);
            return(oRMA);
        }
Exemple #9
0
        private void CalcRO(ROInfo roInfo)
        {
            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                RMAInfo rmaInfo = RMAManager.GetInstance().LoadMaster(roInfo.RMASysNo);
                if (rmaInfo == null || (rmaInfo.Status != (int)AppEnum.RMAStatus.Handled && rmaInfo.Status != (int)AppEnum.RMAStatus.Closed))
                {
                    throw new BizException("Related RMA Sheet load error");
                }
                SOInfo soInfo = SaleManager.GetInstance().LoadSO(rmaInfo.SOSysNo);
                if (soInfo == null || soInfo.Status != (int)AppEnum.SOStatus.OutStock)
                {
                    throw new BizException("Related SO load error");
                }
                decimal cashPayRate = soInfo.CashPay / soInfo.SOAmt;//获取销售单商品金额的现金支付比例
                decimal refundCash  = 0m;
                int     refundPoint = 0;
                foreach (ROItemInfo roItem in roInfo.ItemHash.Values)
                {
                    roItem.RefundCash  = roItem.Price * cashPayRate * roItem.Quantity;
                    roItem.RefundPoint = (roItem.Point - Convert.ToInt32(decimal.Round(roItem.Price * (1 - cashPayRate), 1) * AppConst.ExchangeRate)) * roItem.Quantity;
                    refundCash        += roItem.RefundCash;
                    refundPoint       += roItem.RefundPoint;
                }
                roInfo.CashAmt  = Util.ToMoney(refundCash);
                roInfo.PointAmt = refundPoint;
                CustomerInfo cmInfo = CustomerManager.GetInstance().Load(soInfo.CustomerSysNo);
                if ((cmInfo.ValidScore - refundPoint) < 0)
                {
                    roInfo.RedeemAmt = Convert.ToDecimal(cmInfo.ValidScore + refundPoint) / AppConst.ExchangeRate;
                }
                else
                {
                    roInfo.RedeemAmt = 0m;
                }
                scope.Complete();
            }
        }
Exemple #10
0
        /// <summary>
        /// 获取ro发票
        /// </summary>
        /// <param name="roSysNo"></param>
        /// <returns></returns>
        public ROInvoiceInfo GetROInvoice(int roSysNo)
        {
            ROInvoiceInfo invoice = new ROInvoiceInfo();
            ROInfo        ro      = this.LoadRO(roSysNo);
            RMAInfo       rma     = RMAManager.GetInstance().Load(ro.RMASysNo);
            SOInfo        so      = SaleManager.GetInstance().LoadSO(rma.SOSysNo);
            IcsonInfo     son     = new IcsonInfo();

            invoice.AuditUserSysNo = ro.AuditUserSysNo;
            invoice.CompanyAddress = son.CompanyAddress;
            invoice.InvoiceNote    = so.InvoiceNote;
            invoice.SOID           = so.SOID;
            PayTypeInfo ptInfo = ASPManager.GetInstance().LoadPayType(so.PayTypeSysNo);

            invoice.PayTypeName    = ptInfo.PayTypeName;
            invoice.ReceiveAddress = ro.ReceiveAddress;
            CustomerInfo customer = CustomerManager.GetInstance().Load(so.CustomerSysNo);

            invoice.CustomerName  = customer.CustomerName;
            invoice.CustomerSysNo = customer.SysNo;
            invoice.ReceiveName   = ro.ReceiveName;
            invoice.ReceivePhone  = ro.ReceivePhone;
            invoice.ROID          = ro.ROID;
            invoice.ROSysNo       = ro.SysNo;
            ShipTypeInfo stInfo = ASPManager.GetInstance().LoadShipType(so.ShipTypeSysNo);

            invoice.ShipTypeName = stInfo.ShipTypeName;
            UserInfo employee = SysManager.GetInstance().LoadUser(so.OutUserSysNo);

            if (employee != null)
            {
                invoice.WarehouseUserCode = employee.UserID;
            }
            else
            {
                invoice.WarehouseUserCode = "";
            }
            this.InitPageList(ro, invoice);
            invoice.TotalPage   = invoice.ItemHash.Count;
            invoice.TotalWeight = ro.GetTotalWeight();
            return(invoice);
        }
Exemple #11
0
        public void UpdateRMAMaster(RMAInfo rmaInfo)
        {
            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                Hashtable paramHash = new Hashtable();
                paramHash.Add("CCNote", rmaInfo.CCNote);
                paramHash.Add("LastUserSysNo", rmaInfo.LastUserSysNo);
                paramHash.Add("RMANote", rmaInfo.RMANote);
                paramHash.Add("SysNo", rmaInfo.SysNo);
                paramHash.Add("UserChangedTime", rmaInfo.UserChangedTime);
                paramHash.Add("UserStatus", rmaInfo.UserStatus);
                this.UpdateRMAMaster(paramHash);
                scope.Complete();
            }
        }
Exemple #12
0
        public void UpdateRMA(RMAInfo rmaInfo)
        {
            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                this.UpdateRMAMaster(rmaInfo);
                if (rmaInfo.ItemHash.Count > 0)
                {
                    foreach (RMAItemInfo item in rmaInfo.ItemHash.Values)
                    {
                        this.UpdateRMAItem(item);
                    }
                }
                scope.Complete();
            }
        }
Exemple #13
0
        public void AbandonRMA(RMAInfo oRMA)
        {
            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                int currentStatus = this.GetRMACurrentStatus(oRMA.SysNo);
                if (currentStatus != (int)AppEnum.RMAStatus.Origin && currentStatus != (int)AppEnum.RMAStatus.Received)
                {
                    throw new BizException("此单已经过处理,不能作废");
                }
                Hashtable paramHash = new Hashtable(2);
                paramHash.Add("LastUserSysNo", oRMA.LastUserSysNo);
                paramHash.Add("Status", oRMA.Status);
                paramHash.Add("SysNo", oRMA.SysNo);
                RMAManager.GetInstance().UpdateRMAMaster(paramHash);
                scope.Complete();
            }
        }
Exemple #14
0
        public void CancelReturnRO(ROInfo roInfo)
        {
            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                if (this.GetROCurrentStatus(roInfo.SysNo) != (int)AppEnum.ROStatus.Returned)
                {
                    throw new BizException("This RO is not returned now ,can't cancel return");
                }
                roInfo.Status = (int)AppEnum.ROStatus.Audited;
                //update ro status
                Hashtable paramHash = new Hashtable(4);
                paramHash.Add("Status", roInfo.Status);
                paramHash.Add("ReturnTime", roInfo.ReturnTime);
                paramHash.Add("ReturnUserSysNo", roInfo.ReturnUserSysNo);
                paramHash.Add("SysNo", roInfo.SysNo);
                this.UpdateROMaster(paramHash);
                //update inventory
                foreach (ROItemInfo roItem in roInfo.ItemHash.Values)
                {
                    //UnitCostManager.GetInstance().SetCost(roItem.ProductSysNo, roItem.Quantity*(-1), roItem.Cost);
                    UnitCostManager.GetInstance().SetCost(roItem.ReturnSysNo, roItem.Quantity * (-1), roItem.Cost);
                    InventoryManager.GetInstance().SetInStockQty(roInfo.StockSysNo, roItem.ReturnSysNo, roItem.Quantity * (-1));
                }
                //update customer score
                if (roInfo.PointAmt != 0)
                {
                    RMAInfo oRMA = RMAManager.GetInstance().LoadMaster(roInfo.RMASysNo);
                    PointManager.GetInstance().SetScore(oRMA.CustomerSysNo, roInfo.PointAmt, (int)AppEnum.PointLogType.CancelReturn, roInfo.SysNo.ToString());
                }
                //abandon soincome
                SOIncomeManager.GetInstance().ROCancelReturn(roInfo.SysNo);
                scope.Complete();
            }
        }
Exemple #15
0
        /// <summary>
        /// 新增rma单
        /// </summary>
        /// <param name="rmaInfo"></param>
        public void AddRMA(RMAInfo rmaInfo)
        {
            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                if (!this.IfExistOpenedRMA(rmaInfo.SOSysNo))
                {
                    Hashtable leftHash = this.GetLeftRMAQty(rmaInfo.SOSysNo);
                    foreach (RMAItemInfo item in rmaInfo.ItemHash.Values)
                    {
                        if (item.RMAQty > (int)leftHash[item.ProductSysNo])
                        {
                            throw new BizException("您填写的保修商品数量超过销售单的实际购买数量,请确认需保修的商品均为此单购买");
                        }
                    }
                    rmaInfo.SysNo      = SequenceDac.GetInstance().Create("RMA_Sequence");
                    rmaInfo.RMAID      = this.BuildRMAID(rmaInfo.SysNo);
                    rmaInfo.SubmitInfo = this.GetRMASnapShot(rmaInfo);
                    rmaInfo.Status     = (int)AppEnum.RMAStatus.Origin;
                    this.InsertMaster(rmaInfo);
                    foreach (RMAItemInfo rmaItem in rmaInfo.ItemHash.Values)
                    {
                        rmaItem.RMASysNo = rmaInfo.SysNo;
                        this.InsertItem(rmaItem);
                    }
                }
                else
                {
                    throw new BizException("本销售单已经存在一张保修单在处理中,其间您不能再提交新的保修申请,请联系ORS商城客服");
                }
                scope.Complete();
            }
        }
Exemple #16
0
 private void map(RMAInfo oParam, DataRow tempdr)
 {
     oParam.SysNo            = Util.TrimIntNull(tempdr["SysNo"]);
     oParam.RMAID            = Util.TrimNull(tempdr["RMAID"]);
     oParam.SOSysNo          = Util.TrimIntNull(tempdr["SOSysNo"]);
     oParam.CustomerSysNo    = Util.TrimIntNull(tempdr["CustomerSysNo"]);
     oParam.Status           = Util.TrimIntNull(tempdr["Status"]);
     oParam.AuditUserSysNo   = Util.TrimIntNull(tempdr["AuditUserSysNo"]);
     oParam.AuditTime        = Util.TrimDateNull(tempdr["AuditTime"]);
     oParam.ReceiveUserSysNo = Util.TrimIntNull(tempdr["ReceiveUserSysNo"]);
     oParam.ReceiveTime      = Util.TrimDateNull(tempdr["ReceiveTime"]);
     oParam.CloseUserSysNo   = Util.TrimIntNull(tempdr["CloseUserSysNo"]);
     oParam.CloseTime        = Util.TrimDateNull(tempdr["CloseTime"]);
     oParam.RMAUserSysNo     = Util.TrimIntNull(tempdr["RMAUserSysNo"]);
     oParam.RMATime          = Util.TrimDateNull(tempdr["RMATime"]);
     oParam.LastUserSysNo    = Util.TrimIntNull(tempdr["LastUserSysNo"]);
     oParam.UserChangedTime  = Util.TrimDateNull(tempdr["UserChangedTime"]);
     oParam.RMANote          = Util.TrimNull(tempdr["RMANote"]);
     oParam.CCNote           = Util.TrimNull(tempdr["CCNote"]);
     oParam.SubmitInfo       = Util.TrimNull(tempdr["SubmitInfo"]);
     oParam.ReceiveInfo      = Util.TrimNull(tempdr["ReceiveInfo"]);
     oParam.UserStatus       = Util.TrimIntNull(tempdr["UserStatus"]);
     oParam.CreateTime       = Util.TrimDateNull(tempdr["CreateTime"]);
 }
Exemple #17
0
        public RMAInfo Load(int rmaSysNo)
        {
//            TransactionOptions options = new TransactionOptions();
//            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
//            options.Timeout = TransactionManager.DefaultTimeout;

//            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
//            {
//                RMAInfo oRMA = this.LoadMaster(rmaSysNo);
//                if (oRMA != null)
//                {
//                    string sql = "select * from RMA_Item where rmasysno =" + rmaSysNo;
//                    DataSet ds = SqlHelper.ExecuteDataSet(sql);
//                    if (Util.HasMoreRow(ds))
//                    {
//                        foreach (DataRow dr in ds.Tables[0].Rows)
//                        {
//                            RMAItemInfo oRMAItem = new RMAItemInfo();
//                            this.map(oRMAItem, dr);

//                            string SOItemPODesc = "";
//                            sql = @"select pm.sysno as posysno,pm.vendorsysno from RMA_Item ri
//                                    inner join RMA_Master rm on ri.RMASysNo=rm.sysno
//                                    inner join so_master sm on rm.sosysno=sm.sysno
//                                    inner join so_item si on sm.sysno=si.sosysno and si.productsysno=ri.productsysno
//                                    inner join so_item_po sip on si.sysno=sip.soitemsysno
//                                    inner join po_master pm on sip.posysno=pm.sysno
//                                     where rm.sysno=" + rmaSysNo + " and ri.productsysno=" + Util.TrimIntNull(dr["ProductSysNo"]);
//                            DataSet dsSOItemPO = SqlHelper.ExecuteDataSet(sql);
//                            foreach (DataRow drSOItemPO in dsSOItemPO.Tables[0].Rows)
//                            {
//                                int POSysNo = Util.TrimIntNull(drSOItemPO["posysno"].ToString());
//                                int VendorSysNo = Util.TrimIntNull(drSOItemPO["vendorsysno"].ToString());
//                                SOItemPODesc += "采购单号:<a href=\"javascript:openWindowS2('../Purchase/POSheet.aspx?sysno=" + POSysNo + "&opt=view')" + "\" >" + POSysNo + "</a>, " + "供应商编号:<a href=\"javascript:openWindowS2('../Basic/VendorOpt.aspx?sysno=" + VendorSysNo + "&opt=update')" + "\">" + VendorSysNo + "</a><br>";
//                            }
//                            oRMAItem.SOItemPODesc = SOItemPODesc;

//                            oRMA.ItemHash.Add(oRMAItem.ProductSysNo, oRMAItem);
//                        }
//                    }
//                }
//                scope.Complete();
//                return oRMA;
//            }

            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                RMAInfo oRMA = this.LoadMaster(rmaSysNo);
                if (oRMA != null)
                {
                    string  sql = "select * from RMA_Item where rmasysno =" + rmaSysNo;
                    DataSet ds  = SqlHelper.ExecuteDataSet(sql);
                    if (Util.HasMoreRow(ds))
                    {
                        foreach (DataRow dr in ds.Tables[0].Rows)
                        {
                            RMAItemInfo oRMAItem = new RMAItemInfo();
                            this.map(oRMAItem, dr);

                            string SOItemPODesc = "";
                            sql = @"select isnull(pm.sysno,0) as posysno,isnull(pm.vendorsysno,0) as vendorsysno,isnull(pid.sysno,0) as productidsysno from RMA_Item ri 
                                    inner join RMA_Master rm on ri.RMASysNo=rm.sysno 
                                    inner join so_master sm on rm.sosysno=sm.sysno 
                                    inner join so_item si on sm.sysno=si.sosysno and si.productsysno=ri.productsysno 
                                    inner join so_item_po sip on si.sysno=sip.soitemsysno 
                                    left join po_master pm on sip.posysno=pm.sysno 
                                    left join product_id pid on sip.productidsysno=pid.sysno 
                                    where rm.sysno=" + rmaSysNo + " and ri.productsysno=" + Util.TrimIntNull(dr["ProductSysNo"]);
                            DataSet dsSOItemPO = SqlHelper.ExecuteDataSet(sql);
                            foreach (DataRow drSOItemPO in dsSOItemPO.Tables[0].Rows)
                            {
                                int POSysNo        = Util.TrimIntNull(drSOItemPO["posysno"].ToString());
                                int VendorSysNo    = Util.TrimIntNull(drSOItemPO["vendorsysno"].ToString());
                                int ProductIDSysNo = Util.TrimIntNull(drSOItemPO["productidsysno"].ToString());
                                if (POSysNo > 0)
                                {
                                    SOItemPODesc += "采购单号:<a href=\"javascript:openWindowS2('../Purchase/POSheet.aspx?sysno=" + POSysNo + "&opt=view')" + "\" >" + POSysNo + "</a>, " + "供应商编号:<a href=\"javascript:openWindowS2('../Basic/VendorOpt.aspx?sysno=" + VendorSysNo + "&opt=update')" + "\">" + VendorSysNo + "</a><br>";
                                }
                                else if (ProductIDSysNo > 0)
                                {
                                    SOItemPODesc += "商品序列号:<a href=\"javascript:openWindowS2('../Basic/ProductID.aspx?sysno=" + ProductIDSysNo + "')" + "\" >" + ProductIDSysNo + "</a><br>";
                                }
                            }
                            oRMAItem.SOItemPODesc = SOItemPODesc;
                            oRMA.ItemHash.Add(oRMAItem.ProductSysNo, oRMAItem);
                        }
                    }
                }
                scope.Complete();
                return(oRMA);
            }
        }
Exemple #18
0
        public void Import()
        {
            string  sql = @"select top 1 * from rma_master;
						   select top 1 * from rma_item;"                        ;
            DataSet ds  = SqlHelper.ExecuteDataSet(sql);

            foreach (DataTable dt in ds.Tables)
            {
                if (Util.HasMoreRow(dt))
                {
                    throw new BizException("The target is not empty");
                }
            }
            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                //Insert RMA_Master
                string  sqlMaster = @"select rm.sysno, rmaid, sosysno, customsysno as customersysno, approvetime as audittime, suau.newsysno as auditusersysno, status, rmatime as createtime,
									 note as rmanote,note as ccnote
									 from ipp2003..rma_master rm
									 left join ippconvert..sys_user suau on suau.oldsysno = rm.approversysno"                                    ;
                DataSet dsMaster  = SqlHelper.ExecuteDataSet(sqlMaster);
                if (Util.HasMoreRow(dsMaster))
                {
                    foreach (DataRow dr in dsMaster.Tables[0].Rows)
                    {
                        RMAInfo oRMA = new RMAInfo();
                        oRMA.SysNo          = Util.TrimIntNull(dr["SysNo"]);
                        oRMA.RMAID          = Util.TrimNull(dr["RMAID"]);
                        oRMA.SOSysNo        = Util.TrimIntNull(dr["SOSysNo"]);
                        oRMA.CustomerSysNo  = Util.TrimIntNull(dr["CustomerSysNo"]);
                        oRMA.AuditTime      = Util.TrimDateNull(dr["AuditTime"]);
                        oRMA.AuditUserSysNo = Util.TrimIntNull(dr["AuditUserSysNo"]);
                        switch ((int)dr["Status"])
                        {
                        case -1:
                            oRMA.Status = (int)AppEnum.RMAStatus.Abandon;
                            break;

                        case 0:
                            oRMA.Status = (int)AppEnum.RMAStatus.Origin;
                            break;

                        case 1:
                            oRMA.Status = (int)AppEnum.RMAStatus.Closed;
                            break;
                        }
                        oRMA.CreateTime = Util.TrimDateNull(dr["CreateTime"]);
                        oRMA.RMANote    = Util.TrimNull(dr["RMANote"]);
                        oRMA.CCNote     = Util.TrimNull(dr["CCNote"]);
                        oRMA.UserStatus = 1;
                        new RMADac().InsertMaster(oRMA);
                    }
                }
                //Insert RMA_Item
                string sqlItem = @"select 1 as sysno,rmasysno,case realrmatype when 3 then " + (int)AppEnum.RMAType.Overrule + @" when 1 then " + (int)AppEnum.RMAType.Return
                                 + @" when 2 then " + (int)AppEnum.RMAType.Maintain + @" end as rmatype, realrmaquantity as rmaqty,
								   realrmareason as rmadesc,pb.newsysno as productsysno 
								   from ipp2003..rma_item ri
								   inner join ippconvert..productbasic pb on pb.oldsysno = ri.productsysno"                                ;
                DataSet dsItem = SqlHelper.ExecuteDataSet(sqlItem);
                if (Util.HasMoreRow(dsItem))
                {
                    foreach (DataRow dr in dsItem.Tables[0].Rows)
                    {
                        RMAItemInfo oRMAItem = new RMAItemInfo();
                        this.map(oRMAItem, dr);
                        new RMADac().InsertItem(oRMAItem);
                    }
                }
                //Insert SnapShot
                string sqlSnapShot = @"select rmasysno,rmaid,case rmatype when 0 then " + (int)AppEnum.RMAType.Unsure + @" when 1 then " + (int)AppEnum.RMAType.Return
                                     + @" when 2 then " + (int)AppEnum.RMAType.Maintain + @" end as rmatype, rmaquantity as rmaqty,
									   rmareason as rmadesc,pb.newsysno as productsysno,pl.productname,p.productid
									   from ipp2003..rma_item ri
									   inner join ippconvert..productbasic pb on pb.oldsysno = ri.productsysno
									   inner join ipp2003..product_language pl on pl.productsysno = ri.productsysno and pl.languageid = 'cn'
									   inner join ipp2003..product p on p.sysno = ri.productsysno
									   inner join ipp2003..rma_master rm on rm.sysno = ri.rmasysno
									   order by rmasysno"                                    ;
                DataSet dsSnapShot = SqlHelper.ExecuteDataSet(sqlSnapShot);
                if (Util.HasMoreRow(dsSnapShot))
                {
                    StringBuilder sb        = new StringBuilder();
                    int           tempSysNo = 0;
                    foreach (DataRow dr in dsSnapShot.Tables[0].Rows)
                    {
                        if (tempSysNo != (int)dr["RMASysNo"])
                        {
                            if (tempSysNo != 0)
                            {
                                sb.Append("</table>");
                                Hashtable updateht = new Hashtable();
                                updateht.Add("SysNo", tempSysNo);
                                updateht.Add("SubmitInfo", sb.ToString());
                                updateht.Add("ReceiveInfo", sb.ToString());
                                new RMADac().UpdateMaster(updateht);
                                sb.Remove(0, sb.Length);
                            }
                            sb.Append("<table width='100%' border='1' cellpadding='0' cellspacing='0'>");
                            sb.Append("	<tr>");
                            sb.Append("	 <td>" + dr["RMAID"].ToString() + "</td>");
                            sb.Append("	 <td>商品名称</td>");
                            sb.Append("  <td>返修数量</td>");
                            sb.Append("	 <td>返修类型</td>");
                            sb.Append("  <td>返修原因</td>");
                            sb.Append(" </tr>");
                        }
                        sb.Append("<tr>");
                        sb.Append(" <td>" + dr["ProductID"].ToString() + "</td>");
                        sb.Append(" <td>" + dr["ProductName"].ToString() + "</td>");
                        sb.Append(" <td>" + dr["RMAQty"].ToString() + "</td>");
                        sb.Append(" <td>" + AppEnum.GetRMAType(Util.TrimIntNull(dr["RMAType"])) + "</td>");
                        sb.Append(" <td>" + dr["RMADesc"].ToString() + "</td>");
                        sb.Append("</tr>");
                        tempSysNo = (int)dr["RMASysNo"];
                    }
                }
                //Insert Sequence
                string  sqlMaxSysNo = @"select max(sysno) as sysno from rma_master";
                DataSet dsMaxSysNo  = SqlHelper.ExecuteDataSet(sqlMaxSysNo);
                int     n           = 0;
                while (n < Util.TrimIntNull(dsMaxSysNo.Tables[0].Rows[0][0]))
                {
                    n = SequenceDac.GetInstance().Create("RMA_Sequence");
                }
                scope.Complete();
            }
        }
Exemple #19
0
        public int InsertMaster(RMAInfo oParam)
        {
            string     sql = @"INSERT INTO RMA_Master
                           (
                           SysNo, RMAID, SOSysNo, CustomerSysNo, 
                           Status, AuditUserSysNo, AuditTime, ReceiveUserSysNo, 
                           ReceiveTime, CloseUserSysNo, CloseTime, RMAUserSysNo, RMATime,
						   LastUserSysNo, UserChangedTime, RMANote, CCNote, 
						   SubmitInfo, ReceiveInfo, UserStatus
                           )
                           VALUES (
                           @SysNo, @RMAID, @SOSysNo, @CustomerSysNo, 
                           @Status, @AuditUserSysNo, @AuditTime, @ReceiveUserSysNo, 
                           @ReceiveTime, @CloseUserSysNo, @CloseTime, @RMAUserSysNo, @RMATime,
						   @LastUserSysNo, @UserChangedTime, @RMANote, @CCNote, 
                           @SubmitInfo, @ReceiveInfo, @UserStatus
                           )";
            SqlCommand cmd = new SqlCommand(sql);

            SqlParameter paramSysNo            = new SqlParameter("@SysNo", SqlDbType.Int, 4);
            SqlParameter paramRMAID            = new SqlParameter("@RMAID", SqlDbType.NVarChar, 20);
            SqlParameter paramSOSysNo          = new SqlParameter("@SOSysNo", SqlDbType.Int, 4);
            SqlParameter paramCustomerSysNo    = new SqlParameter("@CustomerSysNo", SqlDbType.Int, 4);
            SqlParameter paramStatus           = new SqlParameter("@Status", SqlDbType.Int, 4);
            SqlParameter paramAuditUserSysNo   = new SqlParameter("@AuditUserSysNo", SqlDbType.Int, 4);
            SqlParameter paramAuditTime        = new SqlParameter("@AuditTime", SqlDbType.DateTime);
            SqlParameter paramReceiveUserSysNo = new SqlParameter("@ReceiveUserSysNo", SqlDbType.Int, 4);
            SqlParameter paramReceiveTime      = new SqlParameter("@ReceiveTime", SqlDbType.DateTime);
            SqlParameter paramCloseUserSysNo   = new SqlParameter("@CloseUserSysNo", SqlDbType.Int, 4);
            SqlParameter paramCloseTime        = new SqlParameter("@CloseTime", SqlDbType.DateTime);
            SqlParameter paramRMAUserSysNo     = new SqlParameter("@RMAUserSysNo", SqlDbType.Int);
            SqlParameter paramRMATime          = new SqlParameter("@RMATime", SqlDbType.DateTime);
            SqlParameter paramLastUserSysNo    = new SqlParameter("@LastUserSysNo", SqlDbType.Int, 4);
            SqlParameter paramUserChangedTime  = new SqlParameter("@UserChangedTime", SqlDbType.DateTime);
            SqlParameter paramRMANote          = new SqlParameter("@RMANote", SqlDbType.NVarChar, 500);
            SqlParameter paramCCNote           = new SqlParameter("@CCNote", SqlDbType.NVarChar, 500);
            SqlParameter paramSubmitInfo       = new SqlParameter("@SubmitInfo", SqlDbType.NText);
            SqlParameter paramReceiveInfo      = new SqlParameter("@ReceiveInfo", SqlDbType.NText);
            SqlParameter paramUserStatus       = new SqlParameter("@UserStatus", SqlDbType.Int, 4);

            if (oParam.SysNo != AppConst.IntNull)
            {
                paramSysNo.Value = oParam.SysNo;
            }
            else
            {
                paramSysNo.Value = System.DBNull.Value;
            }
            if (oParam.RMAID != AppConst.StringNull)
            {
                paramRMAID.Value = oParam.RMAID;
            }
            else
            {
                paramRMAID.Value = System.DBNull.Value;
            }
            if (oParam.SOSysNo != AppConst.IntNull)
            {
                paramSOSysNo.Value = oParam.SOSysNo;
            }
            else
            {
                paramSOSysNo.Value = System.DBNull.Value;
            }
            if (oParam.CustomerSysNo != AppConst.IntNull)
            {
                paramCustomerSysNo.Value = oParam.CustomerSysNo;
            }
            else
            {
                paramCustomerSysNo.Value = System.DBNull.Value;
            }
            if (oParam.Status != AppConst.IntNull)
            {
                paramStatus.Value = oParam.Status;
            }
            else
            {
                paramStatus.Value = System.DBNull.Value;
            }
            if (oParam.AuditUserSysNo != AppConst.IntNull)
            {
                paramAuditUserSysNo.Value = oParam.AuditUserSysNo;
            }
            else
            {
                paramAuditUserSysNo.Value = System.DBNull.Value;
            }
            if (oParam.AuditTime != AppConst.DateTimeNull)
            {
                paramAuditTime.Value = oParam.AuditTime;
            }
            else
            {
                paramAuditTime.Value = System.DBNull.Value;
            }
            if (oParam.ReceiveUserSysNo != AppConst.IntNull)
            {
                paramReceiveUserSysNo.Value = oParam.ReceiveUserSysNo;
            }
            else
            {
                paramReceiveUserSysNo.Value = System.DBNull.Value;
            }
            if (oParam.ReceiveTime != AppConst.DateTimeNull)
            {
                paramReceiveTime.Value = oParam.ReceiveTime;
            }
            else
            {
                paramReceiveTime.Value = System.DBNull.Value;
            }
            if (oParam.CloseUserSysNo != AppConst.IntNull)
            {
                paramCloseUserSysNo.Value = oParam.CloseUserSysNo;
            }
            else
            {
                paramCloseUserSysNo.Value = System.DBNull.Value;
            }
            if (oParam.CloseTime != AppConst.DateTimeNull)
            {
                paramCloseTime.Value = oParam.CloseTime;
            }
            else
            {
                paramCloseTime.Value = System.DBNull.Value;
            }
            if (oParam.RMAUserSysNo != AppConst.IntNull)
            {
                paramRMAUserSysNo.Value = oParam.RMAUserSysNo;
            }
            else
            {
                paramRMAUserSysNo.Value = System.DBNull.Value;
            }
            if (oParam.RMATime != AppConst.DateTimeNull)
            {
                paramRMATime.Value = oParam.RMATime;
            }
            else
            {
                paramRMATime.Value = System.DBNull.Value;
            }
            if (oParam.LastUserSysNo != AppConst.IntNull)
            {
                paramLastUserSysNo.Value = oParam.LastUserSysNo;
            }
            else
            {
                paramLastUserSysNo.Value = System.DBNull.Value;
            }
            if (oParam.UserChangedTime != AppConst.DateTimeNull)
            {
                paramUserChangedTime.Value = oParam.UserChangedTime;
            }
            else
            {
                paramUserChangedTime.Value = System.DBNull.Value;
            }
            if (oParam.RMANote != AppConst.StringNull)
            {
                paramRMANote.Value = oParam.RMANote;
            }
            else
            {
                paramRMANote.Value = System.DBNull.Value;
            }
            if (oParam.CCNote != AppConst.StringNull)
            {
                paramCCNote.Value = oParam.CCNote;
            }
            else
            {
                paramCCNote.Value = System.DBNull.Value;
            }
            if (oParam.SubmitInfo != AppConst.StringNull)
            {
                paramSubmitInfo.Value = oParam.SubmitInfo;
            }
            else
            {
                paramSubmitInfo.Value = System.DBNull.Value;
            }
            if (oParam.ReceiveInfo != AppConst.StringNull)
            {
                paramReceiveInfo.Value = oParam.ReceiveInfo;
            }
            else
            {
                paramReceiveInfo.Value = System.DBNull.Value;
            }
            if (oParam.UserStatus != AppConst.IntNull)
            {
                paramUserStatus.Value = oParam.UserStatus;
            }
            else
            {
                paramUserStatus.Value = System.DBNull.Value;
            }

            cmd.Parameters.Add(paramSysNo);
            cmd.Parameters.Add(paramRMAID);
            cmd.Parameters.Add(paramSOSysNo);
            cmd.Parameters.Add(paramCustomerSysNo);
            cmd.Parameters.Add(paramStatus);
            cmd.Parameters.Add(paramAuditUserSysNo);
            cmd.Parameters.Add(paramAuditTime);
            cmd.Parameters.Add(paramReceiveUserSysNo);
            cmd.Parameters.Add(paramReceiveTime);
            cmd.Parameters.Add(paramCloseUserSysNo);
            cmd.Parameters.Add(paramCloseTime);
            cmd.Parameters.Add(paramRMAUserSysNo);
            cmd.Parameters.Add(paramRMATime);
            cmd.Parameters.Add(paramLastUserSysNo);
            cmd.Parameters.Add(paramUserChangedTime);
            cmd.Parameters.Add(paramRMANote);
            cmd.Parameters.Add(paramCCNote);
            cmd.Parameters.Add(paramSubmitInfo);
            cmd.Parameters.Add(paramReceiveInfo);
            cmd.Parameters.Add(paramUserStatus);

            return(SqlHelper.ExecuteNonQuery(cmd));
        }