示例#1
0
        /// <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);
        }
示例#2
0
        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);
        }
示例#3
0
        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();
            }
        }
示例#4
0
        /// <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);
        }
示例#5
0
        /// <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);
        }