Esempio n. 1
0
        public ActionResult OrderDetail(string ordernum)
        {
            VIEW_TG_order order = new VIEW_TG_order()
            {
                orderNum = CommonMethod.GetOrderNum(), trade_type = "ONLINE", orderTime = DateTime.Now, ThingNum = CommonMethod.GetCode(18)
            };

            ViewBag.ReturnUrl = Request["returnurl"];
            ViewBag.TYPE      = "Update";
            if (string.IsNullOrEmpty(ordernum))
            {
                ViewBag.TYPE = "Add";
                var list = sys_userlogin.LoadListBy(su => su.LOGIN_ID == OperateContext.Current.UsrId).Select(su => su.SLSORG_CD);
                ViewBag.MEMBERS  = DataSelect.ToListViewModel(VIEW_YX_weiUser.ToListViewModel(userB.GetListBy(u => list.Contains(u.TREE_NODE_ID) && u.isfenxiao != 0, u => u.userRelname)));
                ViewBag.COMPANYS = DataSelect.ToListViewModel(VIEW_MST_SUPPLIER.ToListViewModel(supplierB.GetListBy(u => list.Contains(u.TREE_NODE_ID) && u.SYNCOPERATION != "D", u => u.SUPPLIER_ID)));
            }
            var model = orderB.Get(o => o.orderNum == ordernum);

            if (model != null)
            {
                order          = VIEW_TG_order.ToViewModel(model);
                ViewBag.Things = VIEW_TG_Thing.ToListViewModel(thingB.GetListBy(t => t.orderNum == ordernum, t => t.createTim, false));
            }
            return(View(order));
        }
Esempio n. 2
0
        public ActionResult ROrderDetail(string orderid)
        {
            //-----
            noncestr = CommonMethod.GetCode(16);
            string jsapi_ticket = Js_sdk_Signature.IsExistjsapi_ticket(WeChatConfig.IsExistAccess_Token2());

            timestamp = DateTime.Now.Ticks.ToString().Substring(0, 10);;
            string url = Request.Url.ToString().Replace("#", "");

            JssdkSignature = Js_sdk_Signature.GetjsSDK_Signature(noncestr, jsapi_ticket, timestamp, url);

            ViewBag.Appid        = WeChatConfig.GetKeyValue("appid");
            ViewBag.Uri          = WeChatConfig.GetKeyValue("shareurl");
            ViewBag.noncestr     = noncestr;
            ViewBag.jsapi_ticket = jsapi_ticket;
            ViewBag.timestamp    = timestamp;
            ViewBag.PageFlag     = "PayOrder";
            if (string.IsNullOrEmpty(CommonMethod.getCookie("userid")) || string.IsNullOrEmpty(CommonMethod.getCookie("openid")))
            {
                return(Content("对不起,请登陆系统!"));
            }
            var order = orderB.Get(o => o.orderNum == orderid);

            if (order == null)
            {
                return(Content("对不起,这个订单是错误的!"));
            }
            return(View(VIEW_TG_order.ToViewModel(order)));
        }
Esempio n. 3
0
        public MODEL.DataTableModel.DataTableGrid GetOrderForGrid(MODEL.DataTableModel.DataTableRequest request)
        {
            try
            {
                var predicate = PredicateBuilder.True <TG_order>();

                DateTime time = TypeParser.ToDateTime("1975-1-1");

                int total = 0;

                var list     = IDBSession.ISYS_USERLOGIN_REPOSITORY.LoadListBy(su => su.LOGIN_ID == OperateContext.Current.UsrId).Select(su => su.SLSORG_CD);
                var userlist = IDBSession.IYX_weiUser_REPOSITORY.LoadListBy(wu => list.Contains(wu.TREE_NODE_ID)).Select(su => su.userNum);
                predicate = predicate.And(o => o.SYNCOPERATION != "D" && userlist.Contains(o.UserId));
                var data = base.LoadPagedList(request.PageNumber, request.PageSize, ref total, predicate, request.Model, p => true, request.SortOrder, request.SortName).ToList();//Select(p => VIEW_TG_order.ToViewModel(p));
                //var list = ViewModelProduct.ToListViewModel(data);
                return(new MODEL.DataTableModel.DataTableGrid()
                {
                    draw = request.Draw,
                    data = VIEW_TG_order.ToListViewModel(data),
                    total = total
                });
            }
            catch (Exception)
            {
                throw;
            }
        }
Esempio n. 4
0
        public ActionResult ReservationList()
        {
            ViewBag.PageFlag = "ReservationList";
            var status = false;
            var userid = CommonMethod.getCookie("userid");
            var openid = CommonMethod.getCookie("openid");

            if (string.IsNullOrEmpty(userid) || string.IsNullOrEmpty(openid))
            {
                return(Content("对不起,请登陆系统!"));
            }

            ViewBag.OrderList = VIEW_TG_order.ToListViewModel(orderB.GetListBy(s => s.UserId == userid && s.userOpenId == openid && s.trade_type == "JSAPI" && s.SYNCOPERATION != "D", o => o.orderTime, false));
            return(View());
        }
Esempio n. 5
0
        public ActionResult ReservationOrderDetail(string ordernum)
        {
            VIEW_TG_order order = new VIEW_TG_order();

            ViewBag.ReturnUrl = Request["returnurl"];
            ViewBag.TYPE      = "Update";
            if (string.IsNullOrEmpty(ordernum))
            {
                ViewBag.TYPE = "Add";
            }
            var model = orderB.Get(o => o.orderNum == ordernum);

            if (model != null)
            {
                order = VIEW_TG_order.ToViewModel(model);
            }
            return(View(order));
        }
Esempio n. 6
0
        public ActionResult PayOrder(string orderid)
        {
            ViewBag.PageFlag = "PayOrder";
            var openid = CommonMethod.getCookie("openid");
            var userid = CommonMethod.getCookie("userid");
            var user   = weiUserM.GetModelWithOutTrace(u => u.userNum == userid && u.openid == openid);

            if (user == null)
            {
                return(Content("对不起,请登陆系统!"));
            }
            ViewBag.UserType    = user.isfenxiao;
            ViewBag.userYongJin = user.userYongJin;
            ViewBag.Userid      = userid;
            ViewBag.Openid      = openid;
            var order = orderB.Get(o => o.orderNum == orderid);

            if (order == null)
            {
                return(Content("对不起,这个订单是错误的!"));
            }

            //-----
            noncestr = CommonMethod.GetCode(16);
            string jsapi_ticket = Js_sdk_Signature.IsExistjsapi_ticket(WeChatConfig.IsExistAccess_Token2());

            timestamp = DateTime.Now.Ticks.ToString().Substring(0, 10);;
            string url = Request.Url.ToString().Replace("#", "");

            JssdkSignature = Js_sdk_Signature.GetjsSDK_Signature(noncestr, jsapi_ticket, timestamp, url);

            ViewBag.Appid        = WeChatConfig.GetKeyValue("appid");
            ViewBag.Uri          = WeChatConfig.GetKeyValue("shareurl");
            ViewBag.noncestr     = noncestr;
            ViewBag.jsapi_ticket = jsapi_ticket;
            ViewBag.timestamp    = timestamp;

            //微信支付代码
            //
            //httpContext

            var packageReqHandler = new RequestHandler(HttpContext);

            packageReqHandler.Init();

            //时间戳
            payTimeSamp = Senparc.Weixin.MP.TenPayLibV3.TenPayV3Util.GetTimestamp();
            //随机字符串
            sj = CommonMethod.GetCode(16) + "_" + userid;
            //设置参数
            packageReqHandler.SetParameter("body", "商城-购买支付"); //商品信息 127字符
            packageReqHandler.SetParameter("appid", PayConfig.AppId);
            packageReqHandler.SetParameter("mch_id", PayConfig.MchId);
            packageReqHandler.SetParameter("nonce_str", sj);
            packageReqHandler.SetParameter("notify_url", PayConfig.NotifyUrl);
            packageReqHandler.SetParameter("openid", openid);
            packageReqHandler.SetParameter("out_trade_no", orderid + "_" + CommonMethod.GetCode(4));          //商家订单号
            packageReqHandler.SetParameter("spbill_create_ip", Request.UserHostAddress);                      //用户的公网ip,不是商户服务器IP
            packageReqHandler.SetParameter("total_fee", (Convert.ToDouble(order.yunPrice) * 100).ToString()); //商品金额,以分为单位(money * 100).ToString()
            packageReqHandler.SetParameter("trade_type", "JSAPI");
            packageReqHandler.SetParameter("attach", CommonMethod.GetCode(28));                               //自定义参数 127字符
            string sign = packageReqHandler.CreateMd5Sign("key", PayConfig.AppKey);                           //第一次签名结果

            #region 获取package包======================
            packageReqHandler.SetParameter("sign", sign);

            string data = packageReqHandler.ParseXML();//支付发送的数据 XML格式


            string prepayXml = Senparc.Weixin.MP.AdvancedAPIs.TenPayV3.Unifiedorder(data);
            //string prepayXml = WeiXin.GetPage("https://api.mch.weixin.qq.com/pay/unifiedorder", data);
            var xdoc = new XmlDocument();
            xdoc.LoadXml(prepayXml);
            XmlNode xn = xdoc.SelectSingleNode("xml");
            LogHelper.WriteLog(prepayXml);
            try
            {
                string PrepayId = WeChatConfig.GetXMLstrByKey("prepay_id", xdoc);
                Package = string.Format("prepay_id={0}", PrepayId);
                LogHelper.WriteLog(Package);
            }
            catch (Exception ex)
            {
                LogHelper.WriteLog(ex.ToString());
                Package = string.Format("prepay_id={0}", "");
            }
            #endregion


            #region 设置支付参数 输出页面  该部分参数请勿随意修改 ==============
            var paySignReqHandler = new RequestHandler(HttpContext);
            paySignReqHandler.SetParameter("appId", PayConfig.AppId);
            paySignReqHandler.SetParameter("timeStamp", payTimeSamp);
            paySignReqHandler.SetParameter("nonceStr", sj);
            paySignReqHandler.SetParameter("package", Package);
            paySignReqHandler.SetParameter("signType", "MD5");
            PaySign = paySignReqHandler.CreateMd5Sign("key", PayConfig.AppKey);
            #endregion

            //--------END

            ViewBag.payTimeSamp = payTimeSamp;
            ViewBag.sj          = sj;
            ViewBag.Package     = Package;
            ViewBag.PaySign     = PaySign;
            return(View(VIEW_TG_order.ToViewModel(order)));
        }
Esempio n. 7
0
        public ActionResult SubmitOrder()
        {
            var status = false;
            var openid = CommonMethod.getCookie("openid");
            var userid = CommonMethod.getCookie("userid");

            if (string.IsNullOrEmpty(userid) || string.IsNullOrEmpty(openid))
            {
                return(this.JsonFormat(status, status, "对不起,请登陆系统!"));
            }


            string orderNum          = CommonMethod.GetOrderNum(); //订单号
            string ThingNum          = Request.Form["thingNum"];   //CommonMethod.GetCode(18);//流水号;
            string thingName         = Request.Form["thingName"];
            string sid               = Request.Form["sid"];
            string suppliername      = Request.Form["suppliername"];
            string uname             = Request.Form["uname"];
            string mobile            = Request.Form["mobile"];
            string currentselectdate = Request.Form["selectdate"];
            string currentselecttime = Request.Form["selecttime"];
            string thingPrice        = Request.Form["thingPrice"];      //总金额
            string thingFrontPrice   = Request.Form["thingFrontPrice"]; //预付
            string supplieraddress   = Request.Form["supplieraddress"]; //地址Id
            string trade_type        = "JSAPI";
            var    order             = new VIEW_TG_order();

            order.orderNum      = orderNum;
            order.ThingNum      = ThingNum;
            order.remark1       = thingName;
            order.userOpenId    = openid;
            order.UserId        = userid;
            order.userName      = uname;
            order.UserTel       = mobile;
            order.UserAddress   = supplieraddress;
            order.remark2       = suppliername;
            order.remark3       = sid;
            order.total_fee     = TypeParser.ToDecimal(thingPrice);
            order.yunPrice      = TypeParser.ToDecimal(thingFrontPrice);
            order.remark4       = currentselectdate;
            order.remark5       = currentselecttime;
            order.trade_type    = trade_type;
            order.years         = DateTime.Now.Year;
            order.months        = DateTime.Now.Month;
            order.ispay         = 0;
            order.ssh_status    = 0;
            order.orderTime     = DateTime.Now;
            order.SYNCFLAG      = "N";
            order.SYNCOPERATION = "A";
            order.SYNCVERSION   = DateTime.Now;
            order.VERSION       = 1;
            orderB.Add(VIEW_TG_order.ToEntity(order));
            status = true;
            var user = weiUserM.GetModelWithOutTrace(u => u.openid == openid);

            if (user != null)
            {
                user.RelName = uname;
                user.userTel = mobile;
                weiUserM.Modify(user, "RelName", "userTel");
            }
            //  string order_sql = "insert into TG_order(flat2,trade_type,orderNum,ThingNum,total_fee,yunPrice,fenxiaoId,UserId,userOpenId,userName,UserTel,UserAddress,UserPostNum,orderTime,remark4,ispay,years,months) values(" + zengsongJifen + ",'" + trade_type + "','" + orderNum + "','" + ThingNum + "'," + total_fee + "," + YunFei + "," + fenxiaoId + "," + userid + ",'" + openid + "','" + userName + "','" + UserTel + "','" + UserAddress + "','" + UserPostNum + "','" + DateTime.Now + "','" + remark4 + "',0," + DateTime.Now.Year + "," + DateTime.Now.Month + ")";
            //string thing_sql = "insert into TG_Thing(UserId,openId,ThingNum,orderNum,productId,productCount,productPrice,productMoney,createTim,ispay,remark4) values(" + userid + ",'" + openid + "','" + ThingNum + "','" + orderNum + "'," + pid + "," + productCount + "," + proprice + "," + (productCount * proprice) + ",'" + DateTime.Now + "',0,'" + proColor + "')";
            //string car_sql = "delete from TG_car where Pid=" + pid + " and (UserOpenId='" + openid + "' or UserId=" + userid + ")";

            return(this.JsonFormat(status, status, "/aoshacar/payorder.aspx?orderid=" + orderNum));
        }
Esempio n. 8
0
        public ActionResult Add(VIEW_TG_order model)
        {
            bool status = false;

            if (!ModelState.IsValid)
            {
                return(this.JsonFormat(ModelState, status, "ERROR"));
            }
            if (model.total_fee <= 0)
            {
                return(this.JsonFormat("SYSERROR", status, "订单的金额不正确"));
            }
            try
            {
                var user = userB.Get(u => u.userNum == model.UserId);
                if (user != null)
                {
                    model.userName   = user.userRelname;
                    model.userOpenId = user.openid;
                    model.UserTel    = user.userTel;
                }
                var supplierid = TypeParser.ToInt32(model.remark3);
                var company    = supplierB.Get(u => u.SUPPLIER_ID == supplierid);
                if (company != null)
                {
                    model.remark2     = company.SUPPLIER_NAME;
                    model.UserAddress = company.ADDRESS;
                }
                List <VIEW_TG_Thing> things       = new List <VIEW_TG_Thing>();
                string[]             productID    = Request.Form.GetValues("productID");
                string[]             productName  = Request.Form.GetValues("productName");
                string[]             productCount = Request.Form.GetValues("productCount");
                string[]             productPrice = Request.Form.GetValues("productPrice");
                string[]             productMoney = Request.Form.GetValues("productMoney");
                if (productID != null)
                {
                    for (int i = 0; i < productID.Length; i++)
                    {
                        VIEW_TG_Thing item = new VIEW_TG_Thing();
                        item.orderNum     = model.orderNum;
                        item.ispay        = model.ispay;
                        item.ThingNum     = model.ThingNum;
                        item.UserId       = model.UserId;
                        item.openId       = model.userOpenId;
                        item.productId    = productID[i];
                        item.remark1      = productName[i];
                        item.productCount = TypeParser.ToInt32(productCount[i]);
                        item.productPrice = TypeParser.ToDecimal(productPrice[i]);
                        item.productMoney = TypeParser.ToDecimal(productMoney[i]);
                        item.createTim    = DateTime.Now;
                        things.Add(item);
                    }
                }

                model.ispay         = 0;
                model.ssh_status    = 0;
                model.orderTime     = DateTime.Now;
                model.SYNCFLAG      = "N";
                model.SYNCOPERATION = "A";
                model.SYNCVERSION   = DateTime.Now;
                model.VERSION       = 1;
                orderB.Add(VIEW_TG_order.ToEntity(model));
                foreach (var item in things)
                {
                    thingB.Add(VIEW_TG_Thing.ToEntity(item));
                }
                status = true;
            }
            catch (Exception e)
            {
                return(this.JsonFormat(status, status, SysOperate.Add));
            }
            return(this.JsonFormat("/Admin/Order/OrderDetail?ordernum=" + model.orderNum, status, SysOperate.Add.ToMessage(status), status));
        }
Esempio n. 9
0
        public ActionResult FinishOrder(VIEW_TG_order model)
        {
            var  order  = orderB.GetModelWithOutTrace(o => o.orderNum == model.orderNum);
            bool status = false;

            try
            {
                var user = userB.GetModelWithOutTrace(u => u.userNum == order.UserId);
                if (Request["ONLINE"] != null && order != null && user != null)
                {
                    if (model.total_fee <= 0)
                    {
                        return(this.JsonFormat("SYSERROR", status, "订单的金额不正确"));
                    }


                    if (user.userYongJin < model.total_fee)
                    {
                        return(this.JsonFormat("SYSERROR", status, "用户的余额不足"));
                    }
                    else if (order.ispay < 3)
                    {
                        order.total_fee  = model.total_fee;
                        order.yunPrice   = model.yunPrice;
                        order.ispay      = 3;
                        order.ssh_status = 3;
                        order.payTime    = DateTime.Now;
                        order.remark5    = model.remark5;
                        order.remark6    = model.remark6;
                        orderB.Modify(order, "total_fee", "yunPrice", "ispay", "ssh_status", "payTime", "remark5", "remark6");
                        user.userYongJin = user.userYongJin - order.total_fee;
                        userB.Modify(user, "userYongJin");
                        //添加交易记录
                        TG_transactionLog transactionlog = new TG_transactionLog();
                        transactionlog.userId      = user.userNum;
                        transactionlog.openid      = user.openid;
                        transactionlog.tranCate    = 0;
                        transactionlog.CateName    = "到店消费";
                        transactionlog.tranMoney   = order.total_fee;
                        transactionlog.tranContent = "到店消费(订单号:" + order.orderNum + ")消费:" + order.total_fee + " 元";
                        transactionlog.orderNum    = order.orderNum;
                        transactionlog.remark4     = "1003";
                        transactionlog.AddTime     = DateTime.Now;
                        transactionlogB.Add(transactionlog);
                        if (model.IsNotice)
                        {
                            Common.Tools.GetPage("https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=" + WeChatConfig.IsExistAccess_Token2(), WeChatConfig.GetSubcribePostData(user.openid, transactionlog.tranContent));
                        }
                        status = true;
                    }
                    else
                    {
                        status = true;
                        return(this.JsonFormat("/Admin/Order/OrderDetail?ordernum=" + model.orderNum, status, "该订单已经支付了!", true, "SYSSUCCESS"));
                    }
                }
            }
            catch (Exception ex)
            {
                return(this.JsonFormat(status, !status, ex.Message + ex.StackTrace));
            }
            return(this.JsonFormat("/Admin/Order/OrderDetail?ordernum=" + model.orderNum, status, "支付成功!", true, "SYSSUCCESS"));
        }
Esempio n. 10
0
 public bool DownOrder(VIEW_TG_order order)
 {
     throw new NotImplementedException();
 }