Пример #1
0
        public ActionResult GetSureOrder(string openid, string orderNo)
        {
            try
            {
                List <ClassEntity> entitys = new List <ClassEntity>();

                var goods = new OrderBC().GetOrderGoodsListByOpenIdandOrderNo(openid, orderNo);

                try
                {
                    foreach (var item in goods)
                    {
                        var entity = new ClassBC().GetClassByKey(item.ClassId);
                        entity.ClassPrice = item.Price;
                        entitys.Add(entity);
                    }
                }
                catch (Exception ex)
                {
                    throw;
                }



                return(Json(entitys, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                return(Json(new List <ClassEntity>(), JsonRequestBehavior.AllowGet));
            }
        }
Пример #2
0
 public ActionResult SaveChapter(ChapterEntity entity, string loginName)
 {
     try
     {
         var result = new ClassBC().SaveChapter(entity, CurrentUserInfo.Account);
         if (result == 0)
         {
             return(Json(string.Empty));
         }
         return(Json("保存成功"));
     }
     catch (Exception ex)
     {
         return(Json(string.Empty));
     }
 }
Пример #3
0
 public ActionResult EnableChapter(string id, int status)
 {
     try
     {
         if (string.IsNullOrEmpty(id))
         {
             return(Json(string.Empty));
         }
         var result = new ClassBC().EnableChapter(id, status);
         if (result > 0)
         {
             return(Json("更新成功", JsonRequestBehavior.AllowGet));
         }
         else
         {
             return(Json(string.Empty, JsonRequestBehavior.AllowGet));
         }
     }
     catch (Exception ex)
     {
         return(Json(string.Empty, JsonRequestBehavior.AllowGet));
     }
 }
Пример #4
0
        public ActionResult SaveClass(ClassEntity Class)
        {
            try
            {
                //if (Session["ClassImgUrl"] == null )
                //{

                //    int begin = Class.ClassImages.IndexOf("/Images");
                //    if (begin < 0)
                //    {
                //        Class.ClassImages = "";
                //    }
                //    else
                //    {
                //        Class.ClassImages = Class.ClassImages.Substring(begin);
                //    }

                //    //Class.ClassImages = Class.ClassImages.Split();
                //}
                //else
                //{
                //    Class.ClassImages = Session["ClassImgUrl"].ToString();
                //}

                var result = new ClassBC().SaveClass(Class, CurrentUserInfo.Account);
                if (result == 0)
                {
                    return(Json(string.Empty));
                }
                return(Json("保存成功"));
            }
            catch (Exception ex)
            {
                return(Json(string.Empty));
            }
        }
Пример #5
0
        public ActionResult GetMyClassByopenId(string openid, string title)
        {
            try
            {
                var result = new ClassBC().GetMyClassByopenId(openid, title);
                List <VMOrderClass> returnList = new List <VMOrderClass>();
                returnList = result.Where(p => p.OrderStatus == 2).ToList();
                result     = result.Where(p => p.OrderStatus != 2).ToList();
                foreach (var item in result)
                {
                    var hasCount = returnList.Where(p => p.ClassId == item.ClassId).ToList().Count;
                    if (hasCount == 0)
                    {
                        returnList.Add(item);
                    }
                }

                return(Json(returnList, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                return(Json(new List <VMOrderClass>(), JsonRequestBehavior.AllowGet));
            }
        }
Пример #6
0
        /// <summary>
        /// 1.根据classid找到课程助力配置
        /// 2.根据openid判断是否助力过
        /// 3.生成该openid该课程助力数据
        /// 4.更新助力人的助力人数
        /// 5.插入助力人员表
        /// </summary>
        /// <param name="openid"></param>
        /// <param name="classid"></param>
        /// <returns></returns>
        public ActionResult HelpClass(string code, string state, string classid, string ownOpenid, string helpId)
        {
            string msg      = string.Empty;
            string link     = string.Empty;
            string fileName = string.Empty;
            string openid   = "";

            try
            {
                if (new AppSetting().IsDebug != null &&
                    new AppSetting().IsDebug.ToLower() == "true")
                {
                    openid = "123";
                }
                else
                {
                    if (Request.Cookies[SystemConfig.WXOpenIDCookieKey] != null)
                    {
                        openid = Request.Cookies[SystemConfig.WXOpenIDCookieKey].Value;
                    }
                    if (string.IsNullOrEmpty(openid) && string.IsNullOrEmpty(code))
                    {
                        Response.Redirect(CommonHelper.GetRedirect("WxOrder%2fHelpClass?helpId=" + helpId));
                    }
                    try
                    {
                        if (string.IsNullOrWhiteSpace(openid))
                        {
                            openid = GetOpenId(code).openid;


                            // 合法用户,允许访问
                            Response.Cookies[SystemConfig.WXOpenIDCookieKey].Value   = openid;
                            Response.Cookies[SystemConfig.WXOpenIDCookieKey].Path    = "/";
                            Response.Cookies[SystemConfig.WXOpenIDCookieKey].Expires = DateTime.Now.AddDays(1);
                        }
                    }
                    catch (Exception ex)
                    {
                    }
                }



                OrderBC bc = new OrderBC();

                HelpInfoEntity entity = new HelpInfoEntity();
                if (!string.IsNullOrEmpty(helpId))
                {
                    entity    = bc.GetHelpByHelpInfoId(helpId);
                    ownOpenid = entity.OpenId;
                    classid   = entity.ClassId;
                }
                var config = bc.GetHelpConfigByClassId(classid);
                if (!string.IsNullOrEmpty(ownOpenid) && !string.IsNullOrEmpty(classid))
                {
                    entity = bc.GetHelpByOpenIdAndClassId(classid, ownOpenid);
                }


                if (ownOpenid != openid)//非发起用户进入
                {
                    var helpinfo = bc.GetHelpMemberByOpenid(openid);
                    if (helpinfo != null)
                    {
                        msg = "该用户已助力";
                        return(Json(msg, JsonRequestBehavior.AllowGet));
                    }

                    helpId = Guid.NewGuid().ToString();

                    //生成二维码
                    SaveIamge QR = CreateQR(helpId);
                    //添加文字水印
                    string WxName = new WxUserBC().GetWxUserByOpenid(openid).Nickname;

                    string path = HttpContext.Server.MapPath("/Images/upload/");

                    string[] sArray = Regex.Split(config.ImageUrl, "Images/upload/", RegexOptions.IgnoreCase);

                    string    filename = sArray[1].ToString();
                    SaveIamge WordsPic = new WaterImageManager().DrawWordsForSaveIamge(filename, path, WxName, 1, FontFamilys.宋体, FontStyle.Bold, ImagePosition.TopMiddle);
                    //添加二维码水印
                    string QrPic = new WaterImageManager().DrawImage(WordsPic.filename, WordsPic.showImg, QR.filename, QR.showImg, 1, ImagePosition.BottomMiddle);
                    LogHelp.WriteLog("QrPic:::" + QrPic);
                    fileName = QrPic;
                    link     = CommonHelper.LinkImageUrl("/Images/upload/" + QrPic);

                    HelpInfoEntity help = new HelpInfoEntity()
                    {
                        HelpInfoId = helpId,
                        ClassId    = classid,
                        OpenId     = openid,
                        NowCount   = 0,
                        imgUrl     = link
                    };

                    var addResult = bc.AddHelpInfo(help, openid);
                    //增加助力记录
                    HelpMemberEntity member = new HelpMemberEntity()
                    {
                        HelpInfoId = entity.HelpInfoId,
                        OpenId     = openid,
                    };
                    var addMember = bc.AddHelpMember(member, openid);
                    //更新助力信息人数
                    var updateInfo = bc.UpdateHelpNowCount(entity.HelpInfoId, entity.NowCount + 1);

                    entity = bc.GetHelpByHelpInfoId(entity.HelpInfoId);

                    int diff   = config.HelpCount - entity.NowCount;
                    var wxUser = new WxUserBC().GetWxUserByOpenid(entity.OpenId);
                    if (diff <= 0)
                    {
                        string      OrderNo = CommonHelper.CreateOrderNo();
                        OrderEntity order   = new OrderEntity()
                        {
                            OrderNo     = OrderNo,
                            Openid      = entity.OpenId,
                            PayPrice    = 0,
                            OrderSource = "4",
                            Nickname    = wxUser.Nickname
                        };
                        List <OrderGoodsEntity> goods = new List <OrderGoodsEntity>();

                        var classEntity       = new ClassBC().GetClassByKey(classid);
                        OrderGoodsEntity good = new OrderGoodsEntity()
                        {
                            ClassId   = classEntity.ClassId,
                            ClassName = classEntity.ClassName,
                            Price     = 0
                        };
                        goods.Add(good);

                        var result = new OrderBC().SaveOrder(order, goods, entity.OpenId);


                        msg = "助力成功";
                    }
                }
                else//发起用户进入
                {
                    LogHelp.WriteLog("HelpClass:::22222");
                    if (entity != null)//如果主力已存在,展示助力情况
                    {
                        link = entity.imgUrl;
                        int diff = config.HelpCount - entity.NowCount;
                        if (diff > 0)
                        {
                            msg = string.Format("还差 {0} 人助力成功", diff);
                            //return Json(msg, JsonRequestBehavior.AllowGet);
                        }
                        else
                        {
                            msg = string.Format("已助力成功");
                            //return Json(msg, JsonRequestBehavior.AllowGet);
                        }
                    }
                    else //如果助力不存在,新增助力
                    {
                        helpId = Guid.NewGuid().ToString();
                        //生成二维码
                        SaveIamge QR = CreateQR(helpId);
                        //添加文字水印
                        string WxName = new WxUserBC().GetWxUserByOpenid(ownOpenid).Nickname;
                        string path   = HttpContext.Server.MapPath("/Images/upload/");

                        string[]  sArray   = Regex.Split(config.ImageUrl, "Images/upload/", RegexOptions.IgnoreCase);
                        string    filename = sArray[1].ToString();
                        SaveIamge WordsPic = new WaterImageManager().DrawWordsForSaveIamge(filename, path, WxName, 1, FontFamilys.宋体, FontStyle.Bold, ImagePosition.TopMiddle);
                        //添加二维码水印
                        string QrPic = new WaterImageManager().DrawImage(WordsPic.filename, WordsPic.showImg, QR.filename, QR.showImg, 1, ImagePosition.BottomMiddle);
                        fileName = QrPic;
                        link     = CommonHelper.LinkImageUrl("/Images/upload/" + QrPic);

                        HelpInfoEntity help = new HelpInfoEntity()
                        {
                            HelpInfoId = helpId,
                            ClassId    = classid,
                            OpenId     = ownOpenid,
                            NowCount   = 0,
                            imgUrl     = link
                        };
                        var addResult = bc.AddHelpInfo(help, ownOpenid);

                        msg = "分享图片,请好友帮忙助力吧";
                    }
                }

                //string media_id = Util.uploadMedia(HttpContext.Server.MapPath("/Images/upload/") + fileName, fileName);
                //Util.SendCustomMessage(openid, media_id);
            }
            catch (Exception ex)
            {
                LogHelp.WriteLog("HelpClass:::" + ex.Message);
            }


            ViewBag.Message = msg;
            ViewBag.Link    = link;

            return(View());
        }
Пример #7
0
        public ActionResult AddOrder(OrderParam param)
        {
            try
            {
                if (param == null)
                {
                    return(Json(string.Empty));
                }

                //判断是否注册
                var userInfo = new WxUserBC().GetWxUserByOpenid(param.openid);

                if (string.IsNullOrEmpty(userInfo.Phone))
                {
                    string url = CommonHelper.GetRedirect("WxMy%2fRegistered");
                    //Response.Redirect(url);
                    return(Json(url, JsonRequestBehavior.AllowGet));
                }
                else
                {
                    string      OrderNo = CommonHelper.CreateOrderNo();
                    OrderEntity order   = new OrderEntity()
                    {
                        OrderNo     = OrderNo,
                        Openid      = param.openid,
                        PayPrice    = param.price,
                        OrderSource = param.source,
                        Nickname    = new WxUserBC().GetWxUserByOpenid(param.openid).Nickname
                    };

                    List <OrderGoodsEntity> goods = new List <OrderGoodsEntity>();

                    var paramList = param.classids.ToString().Split('|').ToList();
                    if (paramList != null && paramList.Count > 0)
                    {
                        foreach (var item in paramList)
                        {
                            if (!string.IsNullOrEmpty(item))
                            {
                                var entity            = new ClassBC().GetClassByKey(item);
                                OrderGoodsEntity good = new OrderGoodsEntity()
                                {
                                    ClassId   = entity.ClassId,
                                    ClassName = entity.ClassName,
                                    Price     = param.source != "1" ? param.price : entity.ClassPrice
                                };
                                goods.Add(good);
                            }
                        }
                    }

                    var result = new OrderBC().SaveOrder(order, goods, param.openid);
                    if (result == "true")
                    {
                        string okUrl = "/WxOrder/Index?orderNo=" + OrderNo;
                        return(Json(okUrl, JsonRequestBehavior.AllowGet));
                    }
                    else
                    {
                        return(Json(string.Empty, JsonRequestBehavior.AllowGet));
                    }
                }

                //var orderResult = new OrderBC().GetOrderByOpenIdandClassId(param.openid,);
            }
            catch (Exception ex)
            {
                LogHelp.WriteLog(DateTime.Now + ":::AddOrderError:::" + ex.Message);
                return(Json(string.Empty, JsonRequestBehavior.AllowGet));
            }
        }