Пример #1
0
        public void CopyToCartPro(M_OrderList Odata)
        {
            DataTable proDt = JsonConvert.DeserializeObject <DataTable>(Pro_Hid.Value);

            if (proDt == null)
            {
                return;
            }
            foreach (DataRow row in proDt.Rows)
            {
                M_CartPro cartMod = new M_CartPro();
                M_Product proMod  = proBll.GetproductByid(DataConvert.CLng(row["id"]));
                int       num     = DataConvert.CLng(row["pronum"]);
                cartMod.Orderlistid = Odata.id;
                cartMod.ProID       = proMod.ID;
                cartMod.Pronum      = num;
                cartMod.Proname     = proMod.Proname;
                cartMod.Username    = Odata.Reuser;
                cartMod.Shijia      = proMod.LinPrice;
                cartMod.AllMoney    = DataConvert.CDouble(Odata.Balance_price);
                cartMod.Danwei      = proMod.ProUnit;
                cartMod.Addtime     = DateTime.Now;
                cartMod.StoreID     = DataConvert.CLng(Odata.StoreID);
                cartProBll.GetInsert(cartMod);
            }
        }
Пример #2
0
        /// <summary>
        /// 拷贝一份至ZL_CartPro长久保存
        /// </summary>
        public void CopyToCartPro(M_UserInfo mu, DataTable dt, int oid)
        {
            B_Product proBll = new B_Product();

            string[] fields = "Additional,StoreID,AllMoney_Json,code".Split(',');
            foreach (string field in fields)
            {
                if (!dt.Columns.Contains(field))
                {
                    dt.Columns.Add(new DataColumn(field, typeof(string)));
                }
            }
            foreach (DataRow dr in dt.Rows)
            {
                M_Product proMod = proBll.GetproductByid(Convert.ToInt32(dr["Proid"]));
                M_CartPro model  = new M_CartPro();
                model.Orderlistid = oid;
                model.ProID       = proMod.ID;
                model.Pronum      = DataConverter.CLng(dr["Pronum"]);
                model.Proname     = proMod.Proname;
                model.Shijia      = Convert.ToDouble(dr["FarePrice"]);
                model.Danwei      = proMod.ProUnit;
                model.Addtime     = DateTime.Now;
                model.StoreID     = DataConvert.CLng(dr["StoreID"]);
                model.code        = DataConvert.CStr(dr["code"]);
                model.Attribute   = DataConvert.CStr(dr["ProAttr"]);
                if (!dt.Columns.Contains("AllMoney"))
                {
                    model.AllMoney = proMod.LinPrice * model.Pronum;
                }
                else
                {
                    model.AllMoney = Convert.ToDouble(dr["AllMoney"]);
                }
                //model.Additional = DataConvert.CStr(dr["Additional"]);
                //model.AllMoney_Json = DataConvert.CStr(dr["AllMoney_Json"]);
                //如果非促销组合,则不保存商品简介和详情
                if (proMod.Class != 2)
                {
                    proMod.Procontent = ""; proMod.Proinfo = "";
                }
                //原价与优惠信息(便于展示)
                //model.Usepoint = 0;
                //model.UsePointArrive = 0;
                //model.FarePrice = "0";
                //model.ArriveMoney = 0;
                //model.ArriveRemind = "";
                #region 保存购买时用户的信息
                model.Username   = mu.UserName;
                model.Additional = DataConvert.CStr(dr["Additional"]);
                //model.Additional = JsonHelper.GetJson(new string[] { "UserID", "GroupID", "PUserID" }, new object[] { mu.UserID, mu.GroupID, mu.ParentUserID });
                #endregion
                #region 将整个商品信息备份(主要是价格和配置部分)
                model.PClass = proMod.Class.ToString();
                //model.ProInfo = JsonConvert.SerializeObject(backup);
                #endregion
                model.ID = cartProBll.GetInsert(model);
            }
        }
Пример #3
0
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!IsPostBack)
     {
         M_UserInfo mu      = buser.GetLogin();
         DataRow    dr      = ExOrder.SelReturnModel(Mid);
         int        user    = DataConvert.CLng(dr["status_user"]);
         int        teacher = DataConvert.CLng(dr["status_teacher"]);
         if (mu.IsNull)
         {
             function.WriteErrMsg("用户未登录");
         }
         if (DataConvert.CLng(dr["status_money"]) == 1)
         {
             function.WriteErrMsg("订单已支付过佣金");
         }
         if (teacher != (int)ExConast.Order_Teacher.签约成功)
         {
             function.WriteErrMsg("订单状态不正确");
         }
         //-----------------生成支付单
         //检测是否已有支付单
         DataTable payDT = DBCenter.Sel(payBll.TbName, "code='" + Mid + "'", "PaymentID DESC");
         if (payDT.Rows.Count > 0)
         {
             M_Payment payMod = payBll.SelReturnModel(Convert.ToInt32(payDT.Rows[0]["PaymentID"]));
             if (payMod.Status == (int)M_Payment.PayStatus.HasPayed)
             {
                 function.WriteErrMsg("支付单已付过款");
             }
             Response.Redirect("/Payonline/OrderPay.aspx?payno=" + payMod.PayNo);
         }
         else
         {
             M_OrderList orderMod = orderBll.NewOrder(mu, M_OrderList.OrderEnum.Normal);
             orderMod.Ordersamount   = PlugConfig.Instance.Order_YJ;
             orderMod.Specifiedprice = PlugConfig.Instance.Order_YJ;
             orderMod.Balance_price  = PlugConfig.Instance.Order_YJ;
             orderMod.Money_code     = Mid.ToString();
             orderMod.id             = orderBll.insert(orderMod);
             M_CartPro cpMod = new M_CartPro();
             cpMod.Orderlistid = orderMod.id;
             cpMod.Proname     = "佣金";
             cpMod.Pronum      = 1;
             cpMod.Shijia      = orderMod.Ordersamount;
             cpMod.UserID      = mu.UserID;
             cpMod.Username    = mu.UserName;
             cpMod.ID          = cpBll.GetInsert(cpMod);
             M_Payment payMod = payBll.CreateByOrder(orderMod);
             payMod.code      = Mid.ToString();
             payMod.PaymentID = payBll.Add(payMod);
             //进去支付界面
             Response.Redirect("/Payonline/OrderPay.aspx?payno=" + payMod.PayNo);
         }
     }
 }
Пример #4
0
        protected void Submit_Btn_Click(object sender, EventArgs e)
        {
            M_UserInfo mu      = buser.GetLogin();
            M_Product  proMod  = proBll.GetproductByid(ProID);
            DataRow    timeMod = idcBll.GetSelTime(proMod, IDCTime_DP.SelectedValue);
            //-----------------------------------
            M_OrderList Odata = orderBll.NewOrder(mu, M_OrderList.OrderEnum.IDC);

            Odata.Balance_price = DataConvert.CDouble(timeMod["price"]);//需付金额
            Odata.Ordersamount  = Odata.Balance_price;
            //-----------------------------
            M_Order_IDC idcMod = new M_Order_IDC();

            idcMod.OrderNo   = Odata.OrderNo;
            idcMod.ProID     = proMod.ID;
            idcMod.ProInfo   = idcBll.ToProInfoStr(timeMod);
            idcMod.Domain    = BindDomain_T.Text;
            idcMod.AdminName = "webmater@" + idcMod.Domain;
            idcMod.AdminPwd  = Pwd_T.Text;
            idcMod.Remind    = OPSys_DP.SelectedValue + "|" + ServerPos_DP.SelectedValue + "|" + Record_T.Text;
            idcMod.ID        = idcBll.Insert(idcMod);
            Odata.id         = orderBll.Adds(Odata);
            //-----------------------------
            M_CartPro cpMod = new M_CartPro();

            cpMod.Orderlistid = Odata.id;
            cpMod.ProID       = proMod.ID;
            cpMod.Pronum      = 1;
            cpMod.Proname     = proMod.Proname;
            cpMod.Username    = mu.UserName;
            cpMod.Shijia      = Convert.ToDouble(timeMod["price"]);
            cpMod.AllMoney    = Convert.ToDouble(timeMod["price"]);
            cpMod.code        = timeMod["time"].ToString();
            cartProBll.GetInsert(cpMod);
            //-----------------------------
            M_Payment payMod = payBll.CreateByOrder(Odata);

            payBll.Add(payMod);
            Response.Redirect("/PayOnline/Orderpay.aspx?PayNo=" + payMod.PayNo);
        }
Пример #5
0
    protected void Page_Load(object sender, EventArgs e)
    {
        ExHelper.CheckUserAuth("cash");
        if (function.isAjax())
        {
            //string action = Request.Form["action"];
            string     result = "";
            M_UserInfo mu     = buser.GetLogin();
            //直接生成新单,无效的订单一定时间自动清理(未付款)
            int    uid  = DataConvert.CLng(Request.Form["uid"]);
            string cart = Request.Form["cart"];
            if (string.IsNullOrEmpty(cart))
            {
                throw new Exception("未指定消费项目");
            }
            if (string.IsNullOrEmpty(Request.Form["uid"]))
            {
                throw new Exception("未指定用户");
            }
            //---------------------------根据信息生成订单
            DataTable        cartDT = JsonConvert.DeserializeObject <DataTable>(cart);
            M_User_StoreUser suMod  = new M_User_StoreUser();
            if (uid > 0)
            {
                suMod = suBll.SelModelByUid(uid, mu.SiteID);
            }
            List <M_CartPro> cpList = new List <M_CartPro>();
            //-----------------
            M_OrderList orderMod = null;
            if (Mid > 0)
            {
                orderMod = orderBll.SelReturnModel(Mid);
            }
            else
            {
                orderMod = orderBll.NewOrder(mu, M_OrderList.OrderEnum.Normal);
            }
            //每次均重新获取
            orderMod.Userid       = mu.UserID;
            orderMod.AddUser      = mu.UserName;//收银员名称
            orderMod.Receiver     = suMod.UserID.ToString();
            orderMod.Rename       = suMod.HoneyName;
            orderMod.StoreID      = mu.SiteID;
            orderMod.Ordersamount = 0;
            foreach (DataRow dr in cartDT.Rows)
            {
                int       cid   = Convert.ToInt32(dr["ID"]);
                M_CartPro cpMod = new M_CartPro();
                if (cid > 0)
                {
                    cpMod = cpBll.SelReturnModel(cid);
                    if (cpMod.Orderlistid != Mid)
                    {
                        throw new Exception("购物车数据与订单不匹配");
                    }
                }
                else
                {
                    cpMod.StoreID = mu.SiteID;
                }
                //-------------------
                M_Product proMod = proBll.GetproductByid(Convert.ToInt32(dr["ProID"]));
                cpMod.ProID            = proMod.ID;
                cpMod.Proname          = proMod.Proname;
                cpMod.Danwei           = proMod.ProUnit;
                cpMod.Shijia           = proMod.LinPrice;
                cpMod.Pronum           = Convert.ToInt32(dr["Pronum"]);
                cpMod.AllMoney         = cpMod.Shijia * cpMod.Pronum;
                orderMod.Ordersamount += cpMod.AllMoney;
                //-------------------------
                cpMod.Username  = suMod.HoneyName;
                cpMod.code      = DataConvert.CStr(dr["code"]);      //技师ID
                cpMod.Attribute = DataConvert.CStr(dr["Attribute"]); //技师姓名
                cpList.Add(cpMod);
                //city,bindpro,
            }
            if (orderMod.id > 0)
            {
                orderBll.UpdateByID(orderMod);
            }
            else
            {
                orderMod.id = orderBll.insert(orderMod);
            }
            string cpIds = "";
            foreach (M_CartPro cpMod in cpList)
            {
                if (cpMod.ID > 0)
                {
                    cpBll.UpdateByID(cpMod);
                }
                else
                {
                    cpMod.Orderlistid = orderMod.id;
                    cpMod.ID          = cpBll.GetInsert(cpMod);
                }
                cpIds += cpMod.ID + ",";
            }
            //删除未提交的购物车信息
            cpIds = cpIds.TrimEnd(',');
            DBCenter.DelByWhere("ZL_CartPro", "OrderListID=" + orderMod.id + " AND ID NOT IN (" + cpIds + ")");
            result = orderMod.id.ToString();

            //---------------------------------------------


            Response.Clear();
            Response.Write(result);
            Response.Flush(); Response.End(); return;
        }
        if (!IsPostBack)
        {
            M_UserInfo mu = buser.GetLogin();
            if (Mid > 0)
            {
                M_OrderList orderMod = orderBll.SelReturnModel(Mid);
                if (orderMod.StoreID != mu.SiteID)
                {
                    function.WriteErrMsg("你无权操作该订单");
                }
                if (orderMod.OrderStatus != (int)M_OrderList.StatusEnum.Normal)
                {
                    function.WriteErrMsg("该订单不可修改");
                }
                DataTable cpDT = cpBll.SelByOrderID(orderMod.id);
                Cart_Hid.Value = JsonConvert.SerializeObject(cpDT);
            }
        }
    }
Пример #6
0
    protected void EGV_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        switch (e.CommandName)
        {
        case "del2":
            poBll.Del(e.CommandArgument.ToString());
            break;

        case "fast":
            //生成订单后,跳转至指定界面
            M_UserInfo    mu     = buser.GetLogin();
            M_UserInfo    client = new M_UserInfo();
            M_Ex_PreOrder poMod  = poBll.SelReturnModel(Convert.ToInt32(e.CommandArgument));
            if (poMod == null)
            {
                function.WriteErrMsg("预约单不存在");
            }
            if (poMod.StoreID != mu.SiteID)
            {
                function.WriteErrMsg("不可操作该订单");
            }
            if (poMod.ZStatus != 0)
            {
                function.WriteErrMsg("预约单状态不正确");
            }
            DataTable infoDT = JsonConvert.DeserializeObject <DataTable>(poMod.ClientNeed);
            //----------------------------------
            List <M_CartPro> cpList   = new List <M_CartPro>();
            M_OrderList      orderMod = orderBll.NewOrder(mu, M_OrderList.OrderEnum.Normal);
            orderMod.Userid       = mu.UserID;
            orderMod.AddUser      = mu.UserName;//收银员名称
            orderMod.Receiver     = client.UserID.ToString();
            orderMod.Rename       = client.UserName;
            orderMod.StoreID      = mu.SiteID;
            orderMod.Ordersamount = 0;
            foreach (DataRow dr in infoDT.Rows)
            {
                M_CartPro cpMod  = new M_CartPro();
                M_Product proMod = proBll.GetproductByid(Convert.ToInt32(dr["ProID"]));
                cpMod.ProID            = proMod.ID;
                cpMod.Proname          = proMod.Proname;
                cpMod.Danwei           = proMod.ProUnit;
                cpMod.Shijia           = proMod.LinPrice;
                cpMod.Pronum           = 1;
                cpMod.AllMoney         = cpMod.Shijia * cpMod.Pronum;
                orderMod.Ordersamount += cpMod.AllMoney;
                //-------------------------
                cpMod.Username = client.UserName;
                cpMod.StoreID  = mu.SiteID;
                cpMod.Addtime  = DateTime.Now;
                cpMod.code     = DataConvert.CLng(dr["empid"]).ToString(); //技师ID
                cpMod.ProInfo  = DataConvert.CStr(dr["empname"]);          //技师姓名
                cpList.Add(cpMod);
            }
            orderMod.id = orderBll.insert(orderMod);
            foreach (M_CartPro cpMod in cpList)
            {
                cpMod.Orderlistid = orderMod.id;
                cpMod.ID          = cpBll.GetInsert(cpMod);
            }
            poMod.ZStatus = 99;
            poBll.UpdateByID(poMod);
            Response.Redirect("/Extend/Order/FastOrder.aspx?ID=" + orderMod.id);
            break;
        }
        MyBind();
    }