/// <summary> /// 删除复消单 /// </summary> public string DelOredrAgain(string orderId, double totalPv, string number, int except, string storeId) { double totalMoney = AddOrderDataDAL.GetTotalMoneyByOrderId(orderId); MemberOrderModel order = MemberOrderDAL.GetMemberOrder(orderId); string info = null; using (SqlConnection conn = new SqlConnection(DAL.DBHelper.connString)) { conn.Open(); SqlTransaction tran = conn.BeginTransaction(); try { BLL.CommonClass.ChangeLogs cl_h_info = new BLL.CommonClass.ChangeLogs("memberorder", "orderid"); //实例日志类 cl_h_info.AddRecordtran(tran, orderId); //添加日志,修改前记录原来数据 //如果该订单不存在 if (!BrowsememberordersDAL.CheckOrderIdExists(orderId)) { info = BLL.Translation.Translate("001661", "抱歉,该订单不存在!"); tran.Rollback(); conn.Close(); return(info); } if (order.DefrayState == 1) { if (totalMoney > 0) { D_AccountBLL.AddAccount(storeId, totalMoney, D_AccountSftype.StoreType, D_AccountKmtype.OrderDelete, DirectionEnum.AccountsIncreased, "会员【" + number + "】报单删除现金扣添加,订单号为【" + orderId + "】", tran); if (order.DefrayType == 2) { IsElecPay(tran, order); D_AccountBLL.AddAccount(order.Number, Convert.ToDouble(order.TotalMoney), D_AccountSftype.MemberType, D_AccountKmtype.OrderUpdateIn, DirectionEnum.AccountsIncreased, "会员【" + order.Number + "】报单删除现金扣添加,订单号为【" + order.OrderId + "】", tran); D_AccountBLL.AddAccount(order.StoreId, Convert.ToDouble(order.TotalMoney), D_AccountSftype.StoreType, D_AccountKmtype.OrderUpdateOut, DirectionEnum.AccountReduced, "会员【" + order.Number + "】报单删除现金添加扣,订单号为【" + order.OrderId + "】", tran, true); } } int result = addOrderDataDAL.Js_delfuxiao(number, totalPv, except, 1, tran); } //删除复消单 addOrderDataDAL.Del_Horder(tran, orderId, storeId, CommonDataBLL.OperateBh, CommonDataBLL.OperateIP); cl_h_info.DeletedIntoLogstran(tran, BLL.CommonClass.ChangeCategory.store1, orderId, BLL.CommonClass.ENUM_USERTYPE.objecttype5);//插入日志 tran.Commit(); } catch { info = BLL.Translation.Translate("000417", "删除失败!"); tran.Rollback(); } finally { conn.Close(); conn.Dispose(); } } return(info); }
public static bool QPOrders(Model.QuickPay.quickPayParames qpp) { string ExSql = string.Empty; bool flag = false; string notify_id = qpp.DealId; string TotalMoney = Convert.ToString(qpp.PayAmount / 100); //定单额 string hkid = qpp.OrderId; //如果是汇款 string BankId = qpp.BankId; //银行代码 string body = qpp.ProductDesc; //商品描述 string orderID = qpp.OrderId; //如果是订单支付 Model.Enum_RemittancesType RemitType = (Model.Enum_RemittancesType) int.Parse(qpp.Ext1); SqlParameter[] spas = new SqlParameter[] { new SqlParameter("@PayWay", SqlDbType.Int), new SqlParameter("@Remittancesid", SqlDbType.NVarChar, 20), new SqlParameter("@PayExpectNum", SqlDbType.Int), new SqlParameter("@ReceivablesDate", SqlDbType.DateTime) }; spas[0].Value = 4; spas[1].Value = qpp.OrderId; spas[2].Value = BLL.CommonClass.CommonDataBLL.getMaxqishu(); spas[3].Value = DateTime.Now; int var = 0; SqlTransaction tran = null; SqlConnection con = DAL.DBHelper.SqlCon(); try { con.Open(); tran = con.BeginTransaction(); if (RemitType == Model.Enum_RemittancesType.enum_StoreRemittance) { Model.RemittancesModel model = BLL.MoneyFlows.RemittancesBLL.GetRemitByHuidan(qpp.OrderId); string type = ""; ExSql = "update Remittances set IsGSQR=1,PayWay=@PayWay,PayExpectNum=@PayExpectNum,ReceivablesDate=@ReceivablesDate where Remittancesid=@Remittancesid"; switch (model.Use) { case 1: type = string.Format("TotalAccountMoney = TotalAccountMoney+{0}", TotalMoney); break; case 2: type = string.Format("TurnOverMoney=TurnOverMoney+{0}", TotalMoney); break; case 3: type = string.Format("TotalInvestMoney=TotalInvestMoney+{0}", TotalMoney); break; case 4: type = string.Format("OtherMoney=OtherMoney+{0}", TotalMoney); break; } string upstore = ""; if (type != "") { upstore = string.Format(" update StoreInfo set {0} where StoreID='{1}'", type, model.RemitNumber); } else { flag = false; tran.Rollback(); return(flag); } ExSql += upstore; //加入对账单 D_AccountBLL.AddAccount(model.RemitNumber, double.Parse(TotalMoney), D_AccountSftype.StoreType, D_AccountKmtype.RechargeByOnline, DirectionEnum.AccountsIncreased, BLL.Translation.Translate("006712", "店铺快钱支付"), tran); } else if (RemitType == Model.Enum_RemittancesType.enum_MemberRemittance) { ExSql = "update MemberRemittances set IsGSQR=1,PayWay=@PayWay,PayExpectNum=@PayExpectNum,ReceivablesDate=@ReceivablesDate where Remittancesid=@Remittancesid"; Model.RemittancesModel model = BLL.MoneyFlows.RemittancesBLL.GetMemberRemittances(qpp.OrderId); string upmember = string.Format(" update MemberInfo set TotalRemittances = TotalRemittances+{0} where Number='{1}'", TotalMoney, model.RemitNumber); ExSql += upmember; D_AccountBLL.AddAccount(model.RemitNumber, double.Parse(model.RemitMoney.ToString()), D_AccountSftype.MemberType, D_AccountKmtype.RechargeByOnline, DirectionEnum.AccountsIncreased, BLL.Translation.Translate("006713", "会员快钱支付"), tran); } var = DAL.DBHelper.ExecuteNonQuery(tran, ExSql, spas, CommandType.Text); if (var > 0) { flag = true; tran.Commit(); } else { flag = false; tran.Rollback(); } } catch (Exception ex) { flag = false; tran.Rollback(); } return(flag); }
public static string UpdateMemberOrder(string OrderId, IList <MemberDetailsModel> list, MemberOrderModel memberOrderModel, string StoreID) { SqlConnection conn = new SqlConnection(DBHelper.connString); MemberOrderModel order = MemberOrderBLL.GetMemberOrder(memberOrderModel.OrderId); SqlTransaction tran = null; try { conn.Open(); tran = conn.BeginTransaction(); SqlCommand cmd = new SqlCommand(); cmd.Transaction = tran; cmd.Connection = conn; DataTable dhpv = DBHelper.ExecuteDataTable(tran, "select totalpv,LackProductMoney from MemberOrder where OrderID='" + OrderId + "'"); if (memberOrderModel.PayExpect != -1 && memberOrderModel.DefrayState == 1) { if (Convert.ToDecimal(dhpv.Rows[0]["totalpv"]) != memberOrderModel.TotalPv) { //修改后需重新结算 cmd.CommandText = "update config set jsflag='0' where ExpectNum>='" + memberOrderModel.PayExpect + "'"; cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery(); } } if (memberOrderModel.DefrayState == 1) { decimal oldlackproductmoney = Convert.ToDecimal(dhpv.Rows[0]["LackProductMoney"]); if (memberOrderModel.LackProductMoney != oldlackproductmoney) { D_AccountBLL.AddAccount(StoreID, Convert.ToDouble(oldlackproductmoney), D_AccountSftype.StoreType, D_AccountKmtype.OrderUpdateIn, DirectionEnum.AccountsIncreased, "店铺[" + StoreID + "]修改订单[" + order.OrderId + "]退回钱[" + oldlackproductmoney + "]", tran); //D_AccountBLL.AddAccount(StoreID, Convert.ToDouble(memberOrderModel.LackProductMoney), D_AccountSftype.StoreType, D_AccountKmtype.OrderUpdateOut, DirectionEnum.AccountReduced, "店铺[" + StoreID + "]修改订单[" + memberOrderModel.OrderId + "]扣除钱[" + memberOrderModel.LackProductMoney + "]", tran); if (order.DefrayType == 2) { new MemberOrderBLL().IsElecPay(tran, order); D_AccountBLL.AddAccount(order.Number, Convert.ToDouble(order.LackProductMoney), D_AccountSftype.MemberType, D_AccountKmtype.OrderUpdateIn, DirectionEnum.AccountsIncreased, "会员【" + order.Number + "】报单修改现金扣添加,订单号为【" + order.OrderId + "】", tran); D_AccountBLL.AddAccount(order.StoreId, Convert.ToDouble(order.LackProductMoney), D_AccountSftype.StoreType, D_AccountKmtype.OrderUpdateOut, DirectionEnum.AccountReduced, "会员【" + order.Number + "】报单修改现金添加扣,订单号为【" + order.OrderId + "】", tran, true); } } } int res = 0; SqlParameter[] del_parm = { new SqlParameter("@OrderID", OrderId), new SqlParameter("@StoreID", StoreID), new SqlParameter("@Type", 1), new SqlParameter("@res", res), new SqlParameter("@opnum", memberOrderModel.OperateNumber), new SqlParameter("@opip", memberOrderModel.OperateIp), }; BLL.CommonClass.ChangeLogs cl_h_info = new BLL.CommonClass.ChangeLogs("MemberOrder", "ltrim(rtrim(OrderID))"); cl_h_info.AddRecordtran(tran, OrderId); BLL.CommonClass.ChangeLogs cl_h_info1 = new BLL.CommonClass.ChangeLogs("MemberDetails", "ltrim(rtrim(OrderID))"); cl_h_info1.AddRecordtran(tran, OrderId); DBHelper.ExecuteNonQuery(tran, "Delete_H_Order", del_parm, CommandType.StoredProcedure); if (Convert.ToInt32(del_parm[3].Value) == 0) { //添加订单 new AddOrderBLL().SaveHOrder(tran, list, memberOrderModel); cl_h_info.AddRecordtran(tran, OrderId); cl_h_info1.AddRecordtran(tran, OrderId); if (Convert.ToInt32(DAL.DBHelper.ExecuteScalar(tran, "select count(1) from MemberDetails where OrderId='" + OrderId + "'", CommandType.Text)) > 0) { cl_h_info.ModifiedIntoLogstran(tran, ChangeCategory.Order, OrderId, ENUM_USERTYPE.objecttype5); cl_h_info1.ModifiedIntoLogstran(tran, ChangeCategory.Order, OrderId, ENUM_USERTYPE.objecttype5); } tran.Commit(); return("1"); } else { tran.Rollback(); return("-2"); } } catch (Exception ee) { tran.Rollback(); return("-2"); } finally { conn.Close(); conn.Dispose(); } }
/// <summary> /// 添加订单信息 /// </summary> /// <param name="mode"></param> /// <param name="memberOrderModel"></param> /// <param name="totalPv"></param> /// <param name="except"></param> /// <param name="memberDetailsModel"></param> /// <param name="storeInfoModel"></param> public static bool AddOrderData(bool isEdit, MemberOrderModel memberOrderModel, IList <MemberDetailsModel> list) { bool state = false; using (SqlConnection conn = new SqlConnection(DBHelper.connString)) { conn.Open(); SqlTransaction tran = conn.BeginTransaction(); try { //如果是编辑 if (isEdit) { BLL.CommonClass.ChangeLogs cl_h_info = new BLL.CommonClass.ChangeLogs("memberorder", "orderid"); //实例日志类 cl_h_info.AddRecordtran(tran, memberOrderModel.OrderId); //添加日志,修改前记录原来数据 MemberOrderModel order = MemberOrderBLL.GetMemberOrder(memberOrderModel.OrderId); if (order.LackProductMoney > 0) { D_AccountBLL.AddAccount(order.StoreId, Convert.ToDouble(order.LackProductMoney), D_AccountSftype.StoreType, D_AccountKmtype.OrderUpdateIn, DirectionEnum.AccountsIncreased, "会员【" + order.Number + "】报单修改现金扣添加,订单号为【" + order.OrderId + "】", tran); if (order.DefrayType == 2) { new Registration_declarations.MemberOrderAgainBLL().IsElecPay(tran, order); D_AccountBLL.AddAccount(order.Number, Convert.ToDouble(order.LackProductMoney), D_AccountSftype.MemberType, D_AccountKmtype.OrderUpdateIn, DirectionEnum.AccountsIncreased, "会员【" + order.Number + "】报单修改现金扣添加,订单号为【" + order.OrderId + "】", tran); D_AccountBLL.AddAccount(order.StoreId, Convert.ToDouble(order.LackProductMoney), D_AccountSftype.StoreType, D_AccountKmtype.OrderUpdateOut, DirectionEnum.AccountReduced, "会员【" + order.Number + "】报单修改现金添加扣,订单号为【" + order.OrderId + "】", tran, true); } } int delResult = new AddOrderDataDAL().Del_Horder(tran, memberOrderModel.OrderId, memberOrderModel.StoreId, CommonDataBLL.OperateBh, CommonDataBLL.OperateIP); if (memberOrderModel.DefrayState == 1)//店铺复消减去业绩 { int js_delfuxiao_Result = new AddOrderDataDAL().Js_delfuxiao(memberOrderModel.Number, Convert.ToDouble(memberOrderModel.TotalPv), memberOrderModel.PayExpect, memberOrderModel.DefrayState, tran); } cl_h_info.ModifiedIntoLogstran(tran, ChangeCategory.Order, memberOrderModel.OrderId, ENUM_USERTYPE.objecttype5);//插入日志 } //添加订单 new AddOrderBLL().SaveHOrder(tran, list, memberOrderModel); //顾客购物业绩上传(注意支付money要改) if (memberOrderModel.DefrayState == 1) { new AddOrderDataDAL().Js_addfuxiao(memberOrderModel.Number, Convert.ToDouble(memberOrderModel.TotalPv), memberOrderModel.PayExpect, memberOrderModel.DefrayState, tran); CommonDataBLL.SetMemberLevel(tran, memberOrderModel.Number, memberOrderModel.OrderId); } state = true; tran.Commit(); } catch { tran.Rollback(); } finally { conn.Close(); conn.Dispose(); } } return(state); }
/// <summary> /// 删除会员复销信息 /// </summary> /// <param name="strId">报单编号</param> /// <returns></returns> public string DelMembersDeclaration(string orderId, double totalPv, string number, int except, string storeId, double lackproductmoney) { string info = null; MemberOrderModel order = MemberOrderDAL.GetMemberOrder(orderId); using (SqlConnection conn = new SqlConnection(DAL.DBHelper.connString)) { conn.Open(); SqlTransaction tran = conn.BeginTransaction(); #region 处理组合商品库存 /* * List<MemberDetailsModel> groupItemList2 = new AddOrderBLL().GetDetails(orderId); * List<OrderProduct3> oldSmallItem = new List<OrderProduct3>(); * for (int i = 0; i < groupItemList2.Count; i++) * { * if (groupItemList2[i].IsGroupItem != "") * { * oldSmallItem = new AddMemberInfomDAL().GetSamllItemList(groupItemList2[i].ProductId.ToString()); * for (int j = 0; j < oldSmallItem.Count; j++) * { * int hasOnly = new AddOrderDataDAL().SmallItemIsOnlyInGroup(oldSmallItem[j].Id, orderId); * if (hasOnly <= 0) * { * oldSmallItem[j].Count *= groupItemList2[i].Quantity; * int never = new AddOrderDataDAL().updateStore10(storeId, oldSmallItem[j], tran); * if (never <= 0) * { * tran.Rollback(); * conn.Close(); * conn.Dispose(); * info = BLL.Translation.Translate("001730", "抱歉!系统异常!"); * return info; * } * } * * } * } * }*/ #endregion //如果该订单不存在 if (!BrowsememberordersDAL.CheckOrderIdExists(tran, orderId)) { info = BLL.Translation.Translate("001661", "抱歉,该订单不存在!"); tran.Rollback(); conn.Close(); conn.Dispose(); return(info); } //删除复消单 if (order.DefrayState == 1) { if (lackproductmoney > 0) { D_AccountBLL.AddAccount(storeId, lackproductmoney, D_AccountSftype.StoreType, D_AccountKmtype.OrderDelete, DirectionEnum.AccountsIncreased, "会员【" + number + "】报单删除现金返还,订单号为【" + orderId + "】", tran); } } else if (order.DefrayState == 2) { string electronicaccountid = order.ElectronicaccountId;; if (lackproductmoney > 0) { IsElecPay(tran, order); D_AccountBLL.AddAccount(storeId, lackproductmoney, D_AccountSftype.StoreType, D_AccountKmtype.OrderDelete, DirectionEnum.AccountsIncreased, "会员【" + number + "】报单删除现金返还,订单号为【" + orderId + "】", tran); D_AccountBLL.AddAccount(electronicaccountid, lackproductmoney, D_AccountSftype.MemberType, D_AccountKmtype.OrderDelete, DirectionEnum.AccountsIncreased, "会员【" + number + "】报单删除现金返还,订单号为【" + orderId + "】", tran); } } if (order.DefrayState == 1) { int result = new AddOrderDataDAL().Js_delfuxiao(number, totalPv, except, order.DefrayState, tran); } try { new AddOrderDataDAL().Del_Horder(tran, orderId, storeId, CommonDataBLL.OperateBh, CommonDataBLL.OperateIP); tran.Commit(); } catch (Exception) { tran.Rollback(); info = BLL.Translation.Translate("001730", "抱歉!系统异常!"); } finally { conn.Close(); conn.Dispose(); } } return(info); }