private static string websiteOwner;//设定该站点所有者

        public void ProcessRequest(HttpContext context)
        {
            websiteOwner = DataLoadTool.GetWebsiteInfoModel().WebsiteOwner;
            bll          = new BLLJIMP.BLLWeixin("");
            context.Response.ContentType = "text/plain";
            context.Response.Expires     = 0;
            string action = context.Request["Action"];
            string result = "false";

            switch (action)
            {
            case "Add":
                result = Add(context);
                break;

            case "Edit":
                result = Edit(context);
                break;

            case "Delete":
                result = Delete(context);
                break;

            case "Query":
                result = GetAllByAny(context);
                break;
            }
            context.Response.Write(result);
        }
        public void ProcessRequest(HttpContext context)
        {
            //  BLLMenuPermission perbll = new BLLMenuPermission("");
            //_isedit = perbll.CheckUserAndPms(Comm.DataLoadTool.GetCurrUserID(), 255);
            //_isview = perbll.CheckUserAndPms(Comm.DataLoadTool.GetCurrUserID(), 250);
            bll = new BLLWeixin("");
            context.Response.ContentType = "text/plain";
            context.Response.Expires     = 0;
            string Action = context.Request["Action"];
            string result = "false";

            switch (Action)
            {
            //case "Add":
            //    result = Add(context);
            //    break;
            //case "Edit":
            //    result = Edit(context);
            //    break;
            //case "Delete":
            //    result = Delete(context);
            //    break;
            case "Query":
                result = GetAllByAny(context);
                break;
            }
            context.Response.Write(result);
        }
Beispiel #3
0
        protected void Page_Load(object sender, EventArgs e)
        {
            user = Comm.DataLoadTool.GetCurrUserModel();

            userBll   = new BLLJIMP.BLLUser(user.UserID);
            weixinBll = new BLLJIMP.BLLWeixin(user.UserID);

            if (!IsPostBack)
            {
                SystemSet systemset = weixinBll.Get <SystemSet>("");
                //this.lbURL.Text = user.WeixinAPIUrl;
                this.txtToken.Text             = user.WeixinToken;
                this.txtWeinxinPublicName.Text = user.WeixinPublicName;
                this.lbURL.Text = string.Format("{0}/Weixin/OAuthPage.aspx?u={1}", systemset.weiXinAdDomain, Common.Base64Change.EncodeBase64ByUTF8(user.UserID));
                ZentCloud.BLLJIMP.Model.WeixinReplyRuleInfo menuModel = weixinBll.Get <ZentCloud.BLLJIMP.Model.WeixinReplyRuleInfo>(string.Format(" UserID = '{0}' and RuleType = 4 ", user.UserID));
                if (menuModel != null)
                {
                    this.txtMenuContent.Text = menuModel.ReplyContent;
                }
                txtAppId.Text     = user.WeixinAppId;
                txtAppSecret.Text = user.WeixinAppSecret;

                this.rblIsWeixinVerify.SelectedValue = user.IsWeixinVerify.ToString();

                if (user.WeixinIsEnableMenu != null)
                {
                    if (user.WeixinIsEnableMenu == 1)
                    {
                        rblEnableMenu.SelectedIndex = 0;
                    }
                    else
                    {
                        rblEnableMenu.SelectedIndex = 1;
                    }
                }
                else
                {
                    rblEnableMenu.SelectedIndex = 1;
                }
            }
        }
Beispiel #4
0
        public void ProcessRequest(HttpContext context)
        {
            /// <summary>
            /// 卡券BLL
            /// </summary>
            BLLJIMP.BLLCardCoupon bllCardCoupon = new BLLJIMP.BLLCardCoupon();
            /// <summary>
            /// 商城BLL
            /// </summary>
            BLLJIMP.BLLMall bllMall = new BLLJIMP.BLLMall();
            /// <summary>
            /// 用户BLL
            /// </summary>
            BLLJIMP.BLLUser bllUser = new BLLJIMP.BLLUser();
            /// <summary>
            /// 微信BLL
            /// </summary>
            BLLJIMP.BLLWeixin bllWeixin = new BLLJIMP.BLLWeixin();
            /// <summary>
            ///
            /// </summary>
            BLLJIMP.BLLStoredValueCard bllStoredValue = new BLLJIMP.BLLStoredValueCard();
            /// <summary>
            ///
            /// </summary>
            BLLJIMP.BLLWeixinCard bllWeixinCard = new BLLJIMP.BLLWeixinCard();

            string cardCouponId   = context.Request["cardcoupon_id"];    //主卡券ID
            string myCardCouponId = context.Request["my_cardcoupon_id"]; //我的卡券ID

            if (string.IsNullOrEmpty(cardCouponId))
            {
                resp.status = false;
                resp.msg    = "cardcoupon_id 参数必传";
                context.Response.Write(JsonConvert.SerializeObject(resp));
                return;
            }
            CardCoupons cardCoupon = bllCardCoupon.GetCardCouponByWXCardId(cardCouponId);

            if (cardCoupon == null)
            {
                cardCoupon = bllCardCoupon.GetCardCoupon(int.Parse(cardCouponId));
                if (cardCoupon == null)
                {
                    resp.status = false;
                    resp.msg    = "cardcoupon_id 不存在";
                    context.Response.Write(JsonConvert.SerializeObject(resp));
                    return;
                }
            }
            cardCoupon = bllCardCoupon.ConvertExpireTime(cardCoupon);

            MainCardModel model = new MainCardModel();

            model.cardcoupon_id      = cardCoupon.CardId;
            model.cardcoupon_name    = cardCoupon.Name;
            model.cardcoupon_type    = ConvertCardCouponType(cardCoupon.CardCouponType);
            model.valid_from         = cardCoupon.ValidFrom.ToString();
            model.valid_to           = cardCoupon.ValidTo.ToString();
            model.img_url            = bllMall.GetImgUrl(cardCoupon.Logo);
            model.discount           = string.IsNullOrEmpty(cardCoupon.Ex1) ? 0 : double.Parse(cardCoupon.Ex1);
            model.product_id         = string.IsNullOrEmpty(cardCoupon.Ex2) ? 0 : double.Parse(cardCoupon.Ex2);
            model.deductible_amount  = string.IsNullOrEmpty(cardCoupon.Ex3) ? 0 : double.Parse(cardCoupon.Ex3);
            model.freefreight_amount = string.IsNullOrEmpty(cardCoupon.Ex4) ? 0 : double.Parse(cardCoupon.Ex4);
            model.buckle_amount      = string.IsNullOrEmpty(cardCoupon.Ex5) ? 0 : double.Parse(cardCoupon.Ex5);
            model.buckle_sub_amount  = string.IsNullOrEmpty(cardCoupon.Ex6) ? 0 : double.Parse(cardCoupon.Ex6);
            model.max_count          = cardCoupon.MaxCount;
            model.send_count         = cardCoupon.SendCount;
            model.un_send_count      = cardCoupon.UnSendCount;
            //model.is_recivece = bllCardCoupon.IsReciveCoupon(cardCoupon.CardId, CurrentUserInfo.UserID);
            model.valid_to_timestamp  = bllCardCoupon.GetTimeStamp((DateTime)cardCoupon.ValidTo);
            model.limit_type          = cardCoupon.Ex7;
            model.product_tags        = cardCoupon.Ex8;
            model.user_get_limit_type = cardCoupon.GetLimitType;
            model.is_can_use_shop     = cardCoupon.IsCanUseShop;
            model.is_can_use_groupbuy = cardCoupon.IsCanUseGroupbuy;
            model.expire_time_type    = cardCoupon.ExpireTimeType;
            model.expire_day          = cardCoupon.ExpireDay;
            model.weixin_card_id      = cardCoupon.WeixinCardId == null ? "" : cardCoupon.WeixinCardId;
            if (!string.IsNullOrEmpty(myCardCouponId))
            {
                MyCardCoupons myCardCoupon = bllCardCoupon.GetMyCardCoupon(int.Parse(myCardCouponId));
                if (myCardCoupon != null)
                {
                    UserInfo fromUserInfo = bllUser.GetUserInfo(myCardCoupon.UserId);

                    if (fromUserInfo != null)
                    {
                        model.from_user_info = new UserInfoModel();
                        model.from_user_info.head_img_url = bllUser.GetUserDispalyAvatar(fromUserInfo);
                        model.from_user_info.nick_name    = bllUser.GetUserDispalyName(fromUserInfo);
                    }

                    if (!string.IsNullOrEmpty(myCardCoupon.ToUserId))
                    {
                        model.is_donation = true;
                    }
                }
            }

            resp.status = true;
            resp.result = model;

            context.Response.Write(JsonConvert.SerializeObject(resp));
        }
Beispiel #5
0
        public void ProcessRequest(HttpContext context)
        {
            /// <summary>
            /// 卡券BLL
            /// </summary>
            BLLJIMP.BLLCardCoupon bllCardCoupon = new BLLJIMP.BLLCardCoupon();
            /// <summary>
            /// 商城BLL
            /// </summary>
            BLLJIMP.BLLMall bllMall = new BLLJIMP.BLLMall();
            /// <summary>
            /// 用户BLL
            /// </summary>
            BLLJIMP.BLLUser bllUser = new BLLJIMP.BLLUser();
            /// <summary>
            /// 微信BLL
            /// </summary>
            BLLJIMP.BLLWeixin bllWeixin = new BLLJIMP.BLLWeixin();
            /// <summary>
            ///
            /// </summary>
            BLLJIMP.BLLStoredValueCard bllStoredValue = new BLLJIMP.BLLStoredValueCard();
            /// <summary>
            ///
            /// </summary>
            BLLJIMP.BLLWeixinCard bllWeixinCard = new BLLJIMP.BLLWeixinCard();


            int pageIndex = !string.IsNullOrEmpty(context.Request["pageindex"]) ? int.Parse(context.Request["pageindex"]) : 1;
            int pageSize  = !string.IsNullOrEmpty(context.Request["pagesize"]) ? int.Parse(context.Request["pagesize"]) : 20;

            pageSize = int.MaxValue;
            string cardcouponStatus    = context.Request["cardcoupon_status"];
            string isCanUse            = "0";                                      // context.Request["is_can_use"];//可以正常使用的标识
            string amount              = context.Request["amount"];                //订单金额
            string isNotShowStoreValue = context.Request["is_notshow_storevalue"]; //是否不显示储值卡

            string openId = context.Request["open_id"];

            bool   isSuccess  = false;
            string msg        = "";
            string couponName = "";
            int    totalCount = 0;

            var currUser = bllUser.GetUserInfoByOpenId(openId);

            if (currUser == null)
            {
                resp.status = false;
                resp.msg    = "openid找不到用户";
                context.Response.Write(JsonConvert.SerializeObject(resp));
                return;
            }

            List <MyCardModel> list = new List <MyCardModel>();

            #region 优惠券
            var sourceData = bllCardCoupon.GetMyCardCoupons(currUser.UserID, pageIndex, pageSize, out totalCount, cardcouponStatus);
            foreach (var item in sourceData)
            {
                BLLJIMP.Model.CardCoupons cardCoupon = bllCardCoupon.GetCardCoupon(item.CardId);
                cardCoupon = bllCardCoupon.ConvertExpireTime(cardCoupon, item);
                MyCardModel model = new MyCardModel();
                model.cardcoupon_id        = item.AutoId;
                model.main_cardcoupon_id   = item.CardId;
                model.cardcoupon_name      = cardCoupon.Name;
                model.cardcoupon_type      = ConvertCardCouponType(cardCoupon.CardCouponType);
                model.valid_from           = cardCoupon.ValidFrom.ToString();
                model.valid_to             = cardCoupon.ValidTo.ToString();
                model.img_url              = bllMall.GetImgUrl(cardCoupon.Logo);
                model.cardcoupon_status    = item.Status;
                model.cardcoupon_gettime   = bllCardCoupon.GetTimeStamp(item.InsertDate);
                model.product_id           = cardCoupon.Ex2;
                model.valid_from_timestamp = bllCardCoupon.GetTimeStamp((DateTime)cardCoupon.ValidFrom);
                model.valid_to_timestamp   = bllCardCoupon.GetTimeStamp((DateTime)cardCoupon.ValidTo);
                model.discount             = cardCoupon.Ex1;
                model.deductible_amount    = cardCoupon.Ex3;
                model.freefreight_amount   = cardCoupon.Ex4;
                model.buckle_amount        = cardCoupon.Ex5;
                model.buckle_sub_amount    = cardCoupon.Ex6;
                model.limit_type           = cardCoupon.Ex7;
                model.product_tags         = cardCoupon.Ex8;
                model.hexiao_channel       = item.HexiaoChannel;
                model.is_can_use_shop      = cardCoupon.IsCanUseShop;
                model.is_can_use_groupbuy  = cardCoupon.IsCanUseGroupbuy;
                model.weixin_card_id       = cardCoupon.WeixinCardId;

                if (model.cardcoupon_type == 4)//满减券直接转成现金券
                {
                    model.buckle_amount     = "";
                    model.buckle_sub_amount = "";
                    model.cardcoupon_type   = 1;
                    model.deductible_amount = cardCoupon.Ex6;
                }

                #region 转赠信息
                model.is_can_give = bllCardCoupon.IsCanGiveCoupon(item, out msg);
                if (!string.IsNullOrEmpty(item.FromUserId))//赠送人信息
                {
                    model.from_user_info = new UserInfoModel();
                    UserInfo fromUserInfo = bllUser.GetUserInfo(item.FromUserId);
                    if (fromUserInfo != null)
                    {
                        model.from_user_info.head_img_url = bllUser.GetUserDispalyAvatar(fromUserInfo);
                        model.from_user_info.nick_name    = bllUser.GetUserDispalyName(fromUserInfo);
                    }
                }
                if (!string.IsNullOrEmpty(item.ToUserId))//被赠送人信息
                {
                    model.to_user_info = new UserInfoModel();
                    UserInfo toUserInfo = bllUser.GetUserInfo(item.ToUserId);
                    if (toUserInfo != null)
                    {
                        model.to_user_info.head_img_url = bllUser.GetUserDispalyAvatar(toUserInfo);
                        model.to_user_info.nick_name    = bllUser.GetUserDispalyName(toUserInfo);
                    }
                }
                #endregion

                if (isCanUse == "1")//可以使用
                {
                    if (model.cardcoupon_status == 0)
                    {
                        if (cardCoupon.ValidFrom != null && cardCoupon.ValidTo != null)
                        {
                            DateTime dtNow = DateTime.Now;
                            if (dtNow >= (DateTime)(cardCoupon.ValidFrom) && (dtNow <= (DateTime)(cardCoupon.ValidTo)))
                            {
                                list.Add(model);
                                //if (!string.IsNullOrEmpty(amount))
                                //{
                                //    if (bllMall.CalcDiscountAmount(item.AutoId.ToString(), decimal.Parse(amount), currUser.UserID, out isSuccess, out msg, out couponName) > 0)
                                //    {
                                //        list.Add(model);
                                //    }
                                //}
                                //else
                                //{
                                //    list.Add(model);
                                //}
                            }
                        }
                    }
                }
                else
                {
                    if (!string.IsNullOrEmpty(amount))
                    {
                        if (bllMall.CalcDiscountAmount(item.AutoId.ToString(), decimal.Parse(amount), currUser.UserID, out isSuccess, out msg, out couponName) > 0)
                        {
                            list.Add(model);
                        }
                    }
                    else
                    {
                        list.Add(model);
                    }
                }
            }
            #endregion

            #region 储值卡转换成现金券
            if (string.IsNullOrEmpty(isNotShowStoreValue))
            {
                var storeValueCardList = bllStoredValue.GetCanUseStoredValueCardList(currUser.UserID);
                foreach (var item in storeValueCardList)
                {
                    try
                    {
                        BLLJIMP.Model.StoredValueCard cardCoupon = bllStoredValue.Get <StoredValueCard>(string.Format(" AutoId={0}", item.CardId));
                        MyCardModel model = new MyCardModel();
                        model.cardcoupon_id      = item.AutoId;
                        model.main_cardcoupon_id = item.CardId;
                        model.cardcoupon_name    = string.Format("{0}(储值卡余额{1}元)", cardCoupon.Name, bllMall.GetStoreValueCardCanUseAmount(item.AutoId.ToString(), item.UserId));
                        model.valid_from         = DateTime.Now.ToString();
                        model.valid_to           = cardCoupon.ValidTo.ToString();
                        // model.img_url = bllMall.GetImgUrl(cardCoupon.Logo);
                        model.cardcoupon_status = 0;
                        //model.cardcoupon_gettime = bllCardCoupon.GetTimeStamp(item.InsertDate);
                        //model.product_id = cardCoupon.Ex2;
                        model.valid_from_timestamp = bllCardCoupon.GetTimeStamp(DateTime.Now);
                        model.valid_to_timestamp   = bllCardCoupon.GetTimeStamp((DateTime)cardCoupon.ValidTo);
                        model.discount             = "";
                        //model.deductible_amount = cardCoupon.Ex3;
                        model.freefreight_amount = "";
                        model.buckle_amount      = "";
                        model.buckle_sub_amount  = "";
                        model.limit_type         = "";
                        model.product_tags       = "";
                        //model.hexiao_channel = item.HexiaoChannel;
                        model.is_can_use_shop     = 1;
                        model.is_can_use_groupbuy = 1;
                        model.product_id          = "";
                        model.buckle_amount       = "";
                        model.buckle_sub_amount   = "";
                        model.cardcoupon_type     = 1;
                        model.deductible_amount   = (item.Amount - bllStoredValue.GetUseRecordList(item.AutoId, item.UserId).Sum(p => p.UseAmount)).ToString();
                        model.is_store_card       = 1;
                        list.Add(model);
                        totalCount++;
                    }
                    catch (Exception ex)
                    {
                        continue;
                    }
                }
                #endregion
            }

            resp.status = true;

            resp.result = new
            {
                totalcount = list.Count,
                list       = list
            };

            context.Response.Write(JsonConvert.SerializeObject(resp));
        }
Beispiel #6
0
        /// <summary>
        /// 分享统计
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        private string GetShareCountStatistics(HttpContext context)
        {
            string preId = context.Request["preId"], //shareId,每次查询是取出传入shareId的子集
                   mid   = context.Request["mid"];

            bool          isRoot       = false;
            StringBuilder strShareInfo = new StringBuilder(" 1=1 ");

            if (string.IsNullOrWhiteSpace(preId))
            {
                //一级目录,返回一级分享和当前检测实体信息, 分享总数  阅读总数  成果总数
                strShareInfo.Append(" AND ( PreId = '' OR PreId IS NULL)");
                isRoot = true;
            }
            else
            {
                if (preId.IndexOf(',') > 0)
                {
                    var tmpList = preId.Split(',').ToList();
                    strShareInfo.AppendFormat(" AND PreId in ({0}) ", Common.StringHelper.ListToStr <string>(tmpList, "'", ","));
                }
                else
                {
                    strShareInfo.AppendFormat(" AND PreId = '{0}' ", preId);
                }
            }

            strShareInfo.AppendFormat(" AND MonitorId = {0} ", mid);

            var shareList = this.bll.GetList <ShareInfo>(strShareInfo.ToString());

            //share信息处理,按个人分享数归类到一块
            List <object> shareResultList = new List <object>();

            #region share信息处理

            if (shareList != null && shareList.Count > 0)
            {
                //取出分享人列表
                var               sharerList = shareList.GroupBy(p => p.UserId).ToList();
                BLLJIMP.BLLUser   userBll    = new BLLJIMP.BLLUser();
                BLLJIMP.BLLWeixin wxBll      = new BLLJIMP.BLLWeixin();

                foreach (var item in sharerList)
                {
                    //获取user信息
                    var userInfo = userBll.GetUserInfo(item.Key);

                    if (userInfo == null)
                    {
                        continue;
                    }

                    //TODO:如果没有头像和姓名  需要去接口取相关头像和姓名 并保存到数据库
                    try
                    {
                        if (string.IsNullOrWhiteSpace(userInfo.WXHeadimgurl))
                        {
                            string accesstoken   = wxBll.GetAccessToken(userInfo.WebsiteOwner);
                            var    newflowerInfo = wxBll.GetWeixinUserInfo(accesstoken, userInfo.WXOpenId);

                            userInfo.WXHeadimgurl = newflowerInfo.headimgurl;
                            userInfo.WXNickname   = newflowerInfo.nickname;

                            this.bll.Update(
                                new UserInfo(),
                                string.Format(" WXHeadimgurl='{0}',WXNickname='{1}' ", userInfo.WXHeadimgurl, userInfo.WXNickname),
                                string.Format(" UserID='{0}' ", userInfo.UserID)
                                );
                        }
                    }
                    catch { }//TODO:临时方案取用户信息,如果出现异常暂时不处理

                    //获取ShareIds
                    var userShareList = shareList.Where(p => (p.UserId != null && p.UserId.ToLower() == userInfo.UserID.ToLower())).Select(p => p.ShareId).ToList();

                    //获取子分享数(所有shareIds的子分享数)
                    var childShareCount = this.bll.GetCount <ShareInfo>(string.Format(" PreId in ({0}) ", Common.StringHelper.ListToStr <string>(userShareList, "'", ",")));

                    //获取阅读数(所有shareIds的阅读总数)
                    var readCount = this.bll.GetCount <ShareReaderInfo>(string.Format(" ShareId in ({0}) ", Common.StringHelper.ListToStr <string>(userShareList, "'", ",")));

                    //获取分享数(等于shareIds总数)
                    var shareCount = userShareList.Count;

                    //获取成果数(所有shareIds带来的报名数,目前统计的是校服对应的那个报名表来统计)
                    //var achievement = this.bll.GetCount<VoteObjectInfo>(string.Format(" ComeonShareId in ({0}) ", Common.StringHelper.ListToStr<string>(userShareList, "'", ",")));

                    //成果数改成活动报名数,取出分享的活动id,查询活动报名是来自哪个用户或者哪个分享id

                    //var achievement =
                    //    this.bll.GetCount<VoteObjectInfo>(string.Format(" ComeonShareId in ({0}) ", Common.StringHelper.ListToStr<string>(userShareList, "'", ",")));

                    var achievement =
                        this.bll.GetCount <ActivityDataInfo>(string.Format(" ShareID in ({0}) ", Common.StringHelper.ListToStr <string>(userShareList, "'", ",")));

                    shareResultList.Add(new
                    {
                        tmpDataKey = Guid.NewGuid().ToString(),
                        userInfo   = new
                        {
                            avatar   = userInfo.WXHeadimgurl,
                            userName = string.IsNullOrWhiteSpace(userInfo.WXNickname) ? "" : userInfo.WXNickname,
                            userId   = userInfo.UserID,
                            wxOpenId = userInfo.WXOpenId
                        },
                        shareIds        = userShareList,
                        preId           = preId,
                        childShareCount = childShareCount,
                        readCount       = readCount,
                        shareCount      = shareCount,
                        achievement     = achievement//成果
                    });
                }
            }
            #endregion

            object rootInfo = new object();

            #region rootInfo处理
            if (isRoot)
            {
                //当前检测实体信息, 分享总数  阅读总数  成果总数
                var monitor         = this.bll.Get <ShareMonitorInfo>(string.Format(" MonitorId = {0} ", mid));
                var shareTotalCount = this.bll.GetCount <ShareInfo>(string.Format(" MonitorId = {0} ", mid));

                //阅读总数= 分享的阅读总数 + 直接阅读总数(未分享)
                var readTotalCount = this.bll.GetCount <ShareReaderInfo>(string.Format(" MonitorId = {0} ", mid));

                //成果总数= 分享的成功总数
                var achievementTotalCount = 0;

                //取出所有分享id
                var allShareList = this.bll.GetList <ShareInfo>(string.Format(" MonitorId = {0} ", mid));
                if (allShareList != null && allShareList.Count > 0)
                {
                    var allShareIds = allShareList.Select(p => p.ShareId).ToList();
                    readTotalCount += this.bll.GetCount <ShareReaderInfo>(string.Format(" ShareId IN ({0}) ", Common.StringHelper.ListToStr <string>(allShareIds, "'", ",")));

                    achievementTotalCount = this.bll.GetCount <VoteObjectInfo>(string.Format(" ComeonShareId IN ({0}) ", Common.StringHelper.ListToStr <string>(allShareIds, "'", ",")));
                }
                rootInfo = new
                {
                    title                 = monitor.MonitorName,
                    shareTotalCount       = shareTotalCount,
                    readTotalCount        = readTotalCount,
                    achievementTotalCount = achievementTotalCount
                };
            }
            #endregion

            return(Common.JSONHelper.ObjectToJson(new
            {
                rootInfo = isRoot ? rootInfo : null,
                shareResultList = shareResultList
            }));
        }