/// <summary> /// 会员卡主页 /// </summary> public ActionResult Index() { // 重定向要授权页 // https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxab6d7123cc1125f5&redirect_uri= // http://wxab6d7123cc1125f5.wx.smartyancheng.com/membercard/index&response_type=code&scope=snsapi_base&state=&component_appid=wx6230602b18fb87dc#wechat_redirect" string openID = CookieHelper.GetCookie("uid"); if (!string.IsNullOrEmpty(openID)) { MemberCardModel model = memberCardBLL.GetModel(AuthorizerAppID); if (model != null) { // 会员信息 ViewBag.MemberInfo = memberInfoBLL.GetModel(openID, model.CardID); } return(View(model)); } else { CookieHelper.SetCookie("redirect_uri", AbsoluteURL); return(Redirect("/oauth2/launch")); } }
protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e) { MemberCardModel memberCard = (MemberCardModel)e.Item.DataItem; ((HtmlTableCell)e.Item.FindControl("Eval_Area")).InnerHtml = bll_area.GetNav(memberCard.CityId, "<u>-</u>"); ((HtmlTableCell)e.Item.FindControl("Eval_Status")).InnerHtml = bll_memberCard.GetStatus(memberCard, "sold") + "<u>|</u>" + bll_memberCard.GetStatus(memberCard, "enab"); }
public static MemberCardModel MemberCardModelFactory(Member m) { MemberCardModel mcModel = new MemberCardModel(); if (m != null) { mcModel = new MemberCardModel(m, User.GetUserBadges); mcModel.UserLocation = m.zipCodeToState(); } return(mcModel); }
protected void SubmitButton_Click(object sender, EventArgs e) { if (Page.IsValid) { string filePath = Server.MapPath(FilePath.Value); if (!String.IsNullOrEmpty(filePath)) { bll_config.Load(new string[] { "excelUsername", "excelPassword", "cardNoPwdDigits" }); DataTable dt_excel = ExcelHelper.Import(filePath, 12, bll_config["excelUsername"], bll_config["excelPassword"]); int cardNoPwdDigits = bll_config.GetInt("cardNoPwdDigits"); if (cardNoPwdDigits <= 0) { FileHelper.DeleteFile(filePath); WebUtility.ShowAlertMessage("惠卡密码位数必须大于零,请在全局功能中进行设置!", null); } for (int i = 0; i < dt_excel.Rows.Count; i++) { DataRow dr = dt_excel.Rows[i]; string cardNo = dr[0].ToString(); if (String.IsNullOrEmpty(cardNo) || bll_memberCard.CardNoExists(cardNo)) { continue; } MemberCardModel memberCard = new MemberCardModel(); memberCard.CardNo = cardNo; memberCard.Pwd = StringHelper.GetRandomString(cardNoPwdDigits); if (dr[1].ToString() == "0") { memberCard.Sold = false; } else { memberCard.Sold = true; } memberCard.CreateTime = DateTime.Now.ToString(); bll_memberCard.Insert(memberCard); } FileHelper.DeleteFile(filePath); WebUtility.ShowAlertMessage("上传成功!", Request.RawUrl); } else { WebUtility.ShowAlertMessage("上传失败,请查看文件格式与大小是否符合系统要求!", null); } } }
public void r100Implementation(MemberCardModel instance) { // This is the placeholder for method implementation. string pMessage = string.Empty; int MemberCardID = Convert.ToInt32(instance.MemberCardID.ToString()); string memMobileNo = instance.MobileNo.ToString(); int MemberID = Convert.ToInt32(instance.MemberID.ToString()); string MemberName = instance.MemberNameOfMember.ToString(); string[] strmobile; if (memMobileNo.Length <= 11) { } strmobile = FormatMobileNo(memMobileNo); if (strmobile[0] == "0") { memMobileNo = strmobile[1].ToString(); pMessage = "Please dodnot disclose these pin number."; //int iRet = SendSMSTo(MemberCardID, memMobileNo, MemberName, pMessage); } RandomGenerator generator = new RandomGenerator(); int rand = generator.RandomNumber(1000, 9999); //string pass = Convert.ToString(generator.RandomNumber()); string pass = rand.ToString(); int duplcatepinnotfound = 0; while (duplcatepinnotfound != 1) { rand = generator.RandomNumber(1000, 9999); pass = Convert.ToString(rand.ToString()); string passRet = GetDuplicateNumber(rand.ToString()); if (passRet.Length == 0) { duplcatepinnotfound = 1; if (duplcatepinnotfound == 1) { UpdatePinToCard(MemberCardID, pass); pMessage = pMessage + pass; SendSMSTo(MemberCardID, memMobileNo, MemberName, pMessage); break; } rand = generator.RandomNumber(1000, 9999); //pass = generator.RandomPassword(); } else { break; } } }
public List <MemberCardModel> GetList(string authorizerAppID) { try { AuthorizationInfoModel authorizationInfoModel = accessTokenDAL.Get(authorizerAppID); string url = "https://api.weixin.qq.com/card/batchget?access_token=" + authorizationInfoModel.AuthorizerAccessToken; LogHelper.Info("批量查询卡券列表 url", url); CardListGetReq req = new CardListGetReq() { Offset = 0, Count = 10 }; string requestBody = JsonConvert.SerializeObject(req); LogHelper.Info("批量查询卡券列表 requestBody", requestBody); string responseBody = HttpHelper.Post(url, requestBody); LogHelper.Info("批量查询卡券列表 responseBody", responseBody); CardListGetResp resp = JsonConvert.DeserializeObject <CardListGetResp>(responseBody); List <MemberCardModel> memberCardModelList = new List <MemberCardModel>(); if (resp.ErrCode == 0) { List <string> cardIDList = resp.CardIDList; if (cardIDList.Any()) { foreach (var cardID in cardIDList) { MemberCardModel memberCardModel = GetModel(authorizerAppID, cardID); if (memberCardModel != null) { memberCardModelList.Add(memberCardModel); } } } } return(memberCardModelList); } catch (Exception ex) { LogHelper.Error(ex); return(null); } }
protected void Page_Load(object sender, EventArgs e) { WebUtility.AdminLoginAuth(); if (!bll_admin.RuleAuth("产品_惠卡管理")) { WebUtility.ShowError(WebUtility.ERROR101); } memberCard = bll_memberCard.GetModel(Request.QueryString["pkid"]); if (memberCard == null) { memberCard = new MemberCardModel(); } if (!Page.IsPostBack) { BindInfo(); } }
public void LoadState(MemberCardModel mem) { if (mem != null) { Member = mem; imgAvatar.ImageUrl = mem.AvatarUrl; imgAvatar.AlternateText = mem.UserName; hypName.NavigateUrl = this.ProfileLink; hypName.Text = mem.UserName; litLocation.Text = Services.CommunityServices.GeoTargeting.GetStateByZip(mem.UserLocation); btnConnect.LoadState(mem.UserName); if (mem.Children != null && mem.Children.Count > 0) { rptChildCard.DataSource = mem.Children; rptChildCard.DataBind(); } } }
public ActionResult MemberCardCreate(MemberCardModel model) { return(Content(cardBLL.Create(CurrentAuthorizer.AuthorizerAppID, model), "application/json")); }
public string Update(string authorizerAppID, MemberCardModel model) { try { Card card = new Card() { CardID = model.CardID, MemberCard = new MemberCard() { BackgroundPicUrl = model.BackgroundPicUrl, BaseInfo = new MemberCardBaseInfo() { LogoUrl = model.LogoUrl, BrandName = model.BrandName, CodeType = "CODE_TYPE_QRCODE", Title = model.Title, Color = "Color010", Notice = model.Notice, ServicePhone = model.ServicePhone, Description = model.Description, DateInfo = new DataInfo() { Type = "DATE_TYPE_PERMANENT" }, Sku = new Sku() { Quantity = 100000000 }, GetLimit = 1, CanGiveFriend = false, CanShare = false, // 不适用自定义Code UseCustomCode = false, UseAllLocations = true, CenterTitle = "会员买单", //CenterSubTitle = "买单立享" + model.Discount + "折,更有积分相送", CenterUrl = "http://" + authorizerAppID + "." + ConfigHelper.DomainWeChat + "/membercard/gopay" // custom_url_name // custom_url // custom_url_sub_title // promotion_url_name // promotion_url // promotion_url_sub_title // need_push_on_view }, AdvancedInfo = new MemberCardAdvancedInfo() { BusinessService = new List <string>() { "BIZ_SERVICE_FREE_WIFI", "BIZ_SERVICE_WITH_PET", "BIZ_SERVICE_FREE_PARK", "BIZ_SERVICE_DELIVER" } }, // 会员卡特权说明 Prerogative = model.Prerogative, // 激活相关 AutoActivate = false, WXActivate = false, // 激活页面 ActivateUrl = "http://" + authorizerAppID + "." + ConfigHelper.DomainWeChat + "/membercard/activate", // 是否支持储值 SupplyBalance = false, //CustomField1 = new CustomField() //{ // // 不行就用 Name , 积分变动触发 is_notify_bonus // // 其他两个触发 is_notify_custom_field2 is_notify_custom_field3 // NameType = "FIELD_NAME_TYPE_STAMP", // Url = string.Format(ConfigHelper.DomainWeChat, authorizerAppID) + "bonus" //}, CustomField2 = new CustomField() { // 优惠券 NameType = "FIELD_NAME_TYPE_COUPON", Url = string.Format(ConfigHelper.DomainWeChat, authorizerAppID) + "coupon" }, CustomField3 = new CustomField() { // 等级 NameType = "FIELD_NAME_TYPE_LEVEL", Url = string.Format(ConfigHelper.DomainWeChat, authorizerAppID) + "level" }, // 积分相关 SupplyBonus = true, BonusRule = new BonusRule() { // 满 CostMoneyUnit = model.CostMoneyUnit, // 送 IncreaseBonus = model.IncreaseBonus, // 单次获得上限 MaxIncreaseBonus = model.MaxIncreaseBonus, // 初始积分 InitIncreaseBonus = model.InitIncreaseBonus, // 用积分 CostBonusUnit = model.CostBonusUnit, // 抵现金 ReduceMoney = model.ReduceMoney, // 抵扣条件,满xx元(这里以分为单位)可用 LeastMoneyToUseBonus = model.LeastMoneyToUseBonus, // 抵扣条件,单笔最多使用xx积分。 MaxReduceBonus = model.MaxReduceBonus }, Discount = model.Discount } }; AuthorizationInfoModel authorizationInfoModel = accessTokenDAL.Get(authorizerAppID); string url = "https://api.weixin.qq.com/card/update?access_token=" + authorizationInfoModel.AuthorizerAccessToken; LogHelper.Info("更新会员卡 url", url); string requestBody = JsonConvert.SerializeObject(card); LogHelper.Info("更新会员卡 requestBody", requestBody); string responseBody = HttpHelper.Post(url, requestBody); LogHelper.Info("更新会员卡 responseBody", responseBody); CardCreateResp resp = JsonConvert.DeserializeObject <CardCreateResp>(responseBody); if (resp.ErrCode == 0) { // 存储 authorizerAppID 和 cardID 之间的对应关系 cardInfoDAL.Insert(authorizerAppID, resp.CardID, DateTime.Now); return(JsonConvert.SerializeObject(new RESTfulModel() { Code = (int)CodeEnum.成功, Msg = string.Format(codeMsgDAL.GetByCode((int)CodeEnum.成功), "更新成功") })); } else { string msg = "errcode: " + resp.ErrCode + ", errmsg: " + resp.ErrMsg; return(JsonConvert.SerializeObject(new RESTfulModel() { Code = (int)CodeEnum.失败, Msg = string.Format(codeMsgDAL.GetByCode((int)CodeEnum.失败), msg) })); } } catch (Exception ex) { LogHelper.Error(ex); return(JsonConvert.SerializeObject(new RESTfulModel() { Code = (int)CodeEnum.系统异常, Msg = codeMsgDAL.GetByCode((int)CodeEnum.系统异常) })); } }