//换货调用存储过程来生成各种订单并修改相应数据库 public string UpdateReplacementUseProc(string displaceOrderId, string outStorageOrderId, string storeOrderId, string refundmentOrderID, string storeID, int expectNum) { string procName = "procCheckDisplaceGoods"; SqlParameter[] HHpara = { new SqlParameter("@OutStorageOrderId", SqlDbType.VarChar, 20), new SqlParameter("@StoreOrderId", SqlDbType.VarChar, 20), new SqlParameter("@DisplaceOrderID", SqlDbType.VarChar, 20), new SqlParameter("@RefundmentOrderID", SqlDbType.VarChar, 20), new SqlParameter("@StoreID", SqlDbType.VarChar, 20), new SqlParameter("@ExpectNum", SqlDbType.Int), }; HHpara[0].Value = outStorageOrderId; HHpara[1].Value = storeOrderId; HHpara[2].Value = displaceOrderId; HHpara[3].Value = refundmentOrderID; HHpara[4].Value = storeID; HHpara[5].Value = CommonDataDAL.GetMaxExpect(); SqlParameter[] outparam = new SqlParameter[] { new SqlParameter("@rval", SqlDbType.NVarChar, 50) }; object[] obj = DBHelper.ExecuteNonQuery(procName, CommandType.StoredProcedure, HHpara, outparam); return(obj[0].ToString()); }
/// <summary> /// 通过网络图删除会员 /// </summary> /// <param name="member">会员编号</param> /// <returns></returns> public string DelMembersDeclarationTreeNet(string member) { string info = ""; //判断该会员是否当前期注册 int regQishu = browsememberordersDAL.GetMemberRegisterQS(member); int maxExcept = Convert.ToInt32(CommonDataDAL.GetMaxExpect()); if (regQishu < maxExcept) { info = "对不起,该会员不是当前期注册的,不可以删除!"; return(info); } //判断该会员是否有复效单 int result = browsememberordersDAL.GetHasOrderAgain(member); if (result > 0) { info = "对不起!该会员有重复消费请先删除重复消费!"; return(info); } //int tjCount = browsememberordersDAL.GetTuiJianCount(member,false); //if (tjCount > 0) //{ // info = "对不起!该会员已经推荐了其他会员,不能删除!"; // return info; //} //int azCount = browsememberordersDAL.GetTuiJianCount(member, true); //if (azCount > 0) //{ // info = "对不起!该会员已经安置了其他会员,不能删除!"; // return info; //} int xh = browsememberordersDAL.GetXHanzhi(member); if (xh > 0) { info = "对不起!删除该会员后安置人数以超过2人,请将上级位置空出后再操作。!"; return(info); } string orderId = browsememberordersDAL.GetOrderID(member); string storeId = browsememberordersDAL.GetStoreID(member); using (SqlConnection conn = new SqlConnection(DBHelper.connString)) { conn.Open(); SqlTransaction tran = conn.BeginTransaction(); try { //删除后 下面的人紧缩上来 (用循环调网其下面的人) browsememberordersDAL.XunHuanTW(member, maxExcept, tran); browsememberordersDAL.DelNew(member, maxExcept, tran); addOrderDataDAL.Del_Horder(tran, orderId, storeId, CommonDataBLL.OperateBh, CommonDataBLL.OperateIP); tran.Commit(); info = "删除成功"; } catch (Exception) { info = "抱歉!系统异常,删除失败!"; tran.Rollback(); conn.Close(); return(info); } finally { conn.Close(); conn.Dispose(); } } return(info); }
//根据换货单号更新店铺换货为已审 public void UpdateReplacement(SqlTransaction tran, string DisplaceOrderId, string storeOrderId, string refundmentOrderID, string storeID, int expectNum, string warehouseId, string depotSeatId) { //@OutStorageOrderId varchar(20) ,----生成的出库单号 //@StoreOrderId varchar(20),--------生成的订单号 //@DisplaceOrderID varchar(20), -----换货单号 //@RefundmentOrderID varchar(20), -------生成的退货单号 //@StoreID varchar(20), ------------换货的店号 //@ExpectNum int ---------------换货的期数 string updateDisplaceOrderSql = @"Update Replacement Set StoreOrderId=@num, RefundmentOrderID=@num1, AuditingDate=@num2, StateFlag='Y' Where DisplaceOrderId= @num3"; SqlParameter[] sPara = new SqlParameter[] { new SqlParameter("@num", SqlDbType.VarChar, 20), new SqlParameter("@num1", SqlDbType.VarChar, 20), new SqlParameter("@num2", SqlDbType.SmallDateTime), new SqlParameter("@num3", SqlDbType.VarChar, 20) }; sPara[0].Value = storeOrderId; sPara[1].Value = refundmentOrderID; sPara[2].Value = Model.Other.MYDateTime.GetCurrentDateTime().ToString(); sPara[3].Value = DisplaceOrderId; DBHelper.ExecuteNonQuery(tran, updateDisplaceOrderSql, sPara, CommandType.Text); //更新公司逻辑库存--换出 DataTable dt = DBHelper.ExecuteDataTable("select OutQuantity as Quantity,ProductID as productId From ReplacementDetail where DisplaceOrderID = @DisplaceOrderID", new SqlParameter[] { new SqlParameter("@DisplaceOrderID", DisplaceOrderId) }, CommandType.Text); foreach (DataRow dr in InventoryDocDAL.GetNewOrderDetail(dt).Rows) { string sqlUpdateLogicProduct = "update LogicProductInventory set Totalin=Totalin+@totalOut where productid=@productid"; SqlParameter[] paraLogicProduct = new SqlParameter[] { new SqlParameter("@totalOut", dr["Quantity"]), new SqlParameter("@productid", dr["productId"]) }; DBHelper.ExecuteNonQuery(sqlUpdateLogicProduct, paraLogicProduct, CommandType.Text); DBHelper.ExecuteNonQuery(tran, @"Update ProductQuantity Set Totalin= Totalin +(" + dr["Quantity"].ToString() + @") Where ProductID =" + dr["productId"].ToString() + @" And DepotSeatId =" + depotSeatId + @" and warehouseid =" + warehouseId, null, CommandType.Text); } //更新公司逻辑库存--换入 dt = DBHelper.ExecuteDataTable("select InQuantity as Quantity,ProductID as productId From ReplacementDetail where DisplaceOrderID = @DisplaceOrderID", new SqlParameter[] { new SqlParameter("@DisplaceOrderID", DisplaceOrderId) }, CommandType.Text); foreach (DataRow dr in InventoryDocDAL.GetNewOrderDetail(dt).Rows) { string sqlUpdateLogicProduct = "update LogicProductInventory set totalout=totalout+@totalin where productid=@productid"; SqlParameter[] paraLogicProduct = new SqlParameter[] { new SqlParameter("@totalin", dr["Quantity"]), new SqlParameter("@productid", dr["productId"]) }; DBHelper.ExecuteNonQuery(sqlUpdateLogicProduct, paraLogicProduct, CommandType.Text); //更新公司实际库存 } //在此调用GeneBillAndUpdateStorageandMoney存储过程 SqlParameter[] HHpara = { new SqlParameter("@StoreOrderId", SqlDbType.VarChar, 20), new SqlParameter("@DisplaceOrderID", SqlDbType.VarChar, 20), new SqlParameter("@RefundmentOrderID", SqlDbType.VarChar, 20), new SqlParameter("@StoreID", SqlDbType.VarChar, 20), new SqlParameter("@ExpectNum", SqlDbType.Int), new SqlParameter("@datenow", SqlDbType.DateTime), }; HHpara[0].Value = storeOrderId; HHpara[1].Value = DisplaceOrderId; HHpara[2].Value = refundmentOrderID; HHpara[3].Value = storeID; HHpara[4].Value = CommonDataDAL.GetMaxExpect(); HHpara[5].Value = DateTime.Now.ToUniversalTime(); DBHelper.ExecuteNonQuery(tran, "GeneBillAndUpdateStorageandMoney", HHpara, CommandType.StoredProcedure); }