//批量删除 protected void btnDelete_Click(object sender, EventArgs e) { ChkAdminLevel("user_sms_template", DTEnums.ActionEnum.Delete.ToString()); //检查权限 int sucCount = 0; int errorCount = 0; BLL.sms_template bll = new BLL.sms_template(); for (int i = 0; i < rptList.Items.Count; i++) { int id = Convert.ToInt32(((HiddenField)rptList.Items[i].FindControl("hidId")).Value); CheckBox cb = (CheckBox)rptList.Items[i].FindControl("chkId"); if (cb.Checked) { if (bll.Delete(id)) { sucCount += 1; } else { errorCount += 1; } } } AddAdminLog(DTEnums.ActionEnum.Delete.ToString(), "删除短信模板成功" + sucCount + "条,失败" + errorCount + "条"); //记录日志 JscriptMsg("删除成功" + sucCount + "条,失败" + errorCount + "条!", Utils.CombUrlTxt("sms_template_list.aspx", "keywords={0}", txtKeywords.Text), "Success"); }
//批量删除 protected void btnDelete_Click(object sender, EventArgs e) { ChkAdminLevel("user_sms_template", DTEnums.ActionEnum.Delete.ToString()); //检查权限 int sucCount = 0; int errorCount = 0; BLL.sms_template bll = new BLL.sms_template(); for (int i = 0; i < rptList.Items.Count; i++) { int id = Convert.ToInt32(((HiddenField)rptList.Items[i].FindControl("hidId")).Value); CheckBox cb = (CheckBox)rptList.Items[i].FindControl("chkId"); if (cb.Checked) { if (bll.Delete(id)) { sucCount += 1; } else { errorCount += 1; } } } AddAdminLog(DTEnums.ActionEnum.Delete.ToString(), "删除短信模板成功" + sucCount + "条,失败" + errorCount + "条"); //记录日志 JscriptMsg("删除成功" + sucCount + "条,失败" + errorCount + "条!", Utils.CombUrlTxt("sms_template_list.aspx", "keywords={0}", this.keywords)); }
private void ShowInfo(int _id) { BLL.sms_template bll = new BLL.sms_template(); Model.sms_template model = bll.GetModel(_id); txtTitle.Text = model.title; txtCallIndex.Text = model.call_index; txtContent.Text = model.content; }
private void RptBind(string _strWhere, string _orderby) { this.page = DTRequest.GetQueryInt("page", 1); txtKeywords.Text = this.keywords; BLL.sms_template bll = new BLL.sms_template(); this.rptList.DataSource = bll.GetList(this.pageSize, this.page, _strWhere, _orderby, out this.totalCount); this.rptList.DataBind(); //绑定页码 txtPageNum.Text = this.pageSize.ToString(); string pageUrl = Utils.CombUrlTxt("sms_template_list.aspx", "keywords={0}&page={1}", this.keywords, "__id__"); PageContent.InnerHtml = Utils.OutPageList(this.pageSize, this.page, this.totalCount, pageUrl, 8); }
private void RptBind(string _strWhere, string _orderby) { this.page = DTRequest.GetQueryInt("page", 1); //txtKeywords.Text = this.keywords; BLL.sms_template bll = new BLL.sms_template(); this.rptList.DataSource = bll.GetList(this.pageSize, this.page, _strWhere, _orderby, out this.totalCount); this.rptList.DataBind(); //绑定页码 txtPageNum.Text = this.pageSize.ToString(); string pageUrl = Utils.CombUrlTxt("sms_template_list.aspx", "keywords={0}&page={1}", txtKeywords.Text, "__id__"); PageContent.InnerHtml = Utils.OutPageList(this.pageSize, this.page, this.totalCount, pageUrl, 8); }
private bool DoAdd() { Model.sms_template model = new Model.sms_template(); BLL.sms_template bll = new BLL.sms_template(); model.title = txtTitle.Text.Trim(); model.call_index = txtCallIndex.Text.Trim(); model.content = txtContent.Text; if (bll.Add(model) > 0) { AddAdminLog(DTEnums.ActionEnum.Add.ToString(), "添加短信模板:" + model.title); //记录日志 return true; } return false; }
private bool DoAdd() { Model.sms_template model = new Model.sms_template(); BLL.sms_template bll = new BLL.sms_template(); model.title = txtTitle.Text.Trim(); model.call_index = txtCallIndex.Text.Trim(); model.content = txtContent.Text; if (bll.Add(model) > 0) { AddAdminLog(PLEnums.ActionEnum.Add.ToString(), "添加短信模板:" + model.title); //记录日志 return(true); } return(false); }
private string verify_mobile(Model.users userModel) { //生成随机码 string strcode = Vincent._DTcms.Utils.Number(4); BLL.user_code codeBll = new BLL.user_code(); Model.user_code codeModel; //检查是否重复提交 codeModel = codeBll.GetModel(userModel.user_name, Vincent._DTcms.DTEnums.CodeEnum.RegVerify.ToString(), "n"); if (codeModel == null) { codeModel = new Model.user_code(); codeModel.user_id = userModel.id; codeModel.user_name = userModel.user_name; codeModel.type = Vincent._DTcms.DTEnums.CodeEnum.RegVerify.ToString(); codeModel.str_code = strcode; codeModel.eff_time = DateTime.Now.AddMinutes(userConfig.regsmsexpired); codeModel.add_time = DateTime.Now; new BLL.user_code().Add(codeModel); } //获得短信模板内容 Model.sms_template smsModel = new BLL.sms_template().GetModel("usercode"); if (smsModel == null) { return("{\"status\":0, \"msg\":\"发送失败,短信模板内容不存在!\"}"); } //替换模板内容 string msgContent = smsModel.content; msgContent = msgContent.Replace("{webname}", siteConfig.webname); msgContent = msgContent.Replace("{webtel}", siteConfig.webtel); msgContent = msgContent.Replace("{weburl}", siteConfig.weburl); msgContent = msgContent.Replace("{username}", userModel.user_name); msgContent = msgContent.Replace("{code}", codeModel.str_code); msgContent = msgContent.Replace("{valid}", userConfig.regsmsexpired.ToString()); //发送短信 string tipMsg = string.Empty; bool sendStatus = new BLL.sms_message().Send(userModel.mobile, msgContent, 2, out tipMsg); if (!sendStatus) { return("{\"status\": 0, \"msg\": \"短信发送失败," + tipMsg + "\"}"); } return("success"); }
private bool DoEdit(int _id) { bool result = false; BLL.sms_template bll = new BLL.sms_template(); Model.sms_template model = bll.GetModel(_id); model.title = txtTitle.Text.Trim(); model.call_index = txtCallIndex.Text.Trim(); model.content = txtContent.Text; if (bll.Update(model)) { AddAdminLog(MXEnums.ActionEnum.Edit.ToString(), "修改短信模板:" + model.title); //记录日志 result = true; } return result; }
private bool DoEdit(int _id) { bool result = false; BLL.sms_template bll = new BLL.sms_template(); Model.sms_template model = bll.GetModel(_id); model.title = txtTitle.Text.Trim(); model.call_index = txtCallIndex.Text.Trim(); model.content = txtContent.Text; if (bll.Update(model)) { AddAdminLog(PLEnums.ActionEnum.Edit.ToString(), "修改短信模板:" + model.title); //记录日志 result = true; } return(result); }
private void user_register_smscode(HttpContext context) { string mobile = DTRequest.GetFormString("mobile"); if (mobile == "") { context.Response.Write("{\"status\":0, \"msg\":\"发送失败,请填写手机号码!\"}"); return; } //检查是否过快 string cookie = Utils.GetCookie("user_register_sms"); if (cookie == mobile) { context.Response.Write("{\"status\":0, \"msg\":\"刚已发送过短信,请2分钟后再试!\"}"); return; } Model.sms_template smsModel = new BLL.sms_template().GetModel("usercode"); //取得短信内容 if (smsModel == null) { context.Response.Write("{\"status\":0, \"msg\":\"发送失败,短信模板不存在!\"}"); return; } string strcode = Utils.Number(4); //随机验证码 //替换标签 string msgContent = smsModel.content; msgContent = msgContent.Replace("{webname}", siteConfig.webname); msgContent = msgContent.Replace("{weburl}", siteConfig.weburl); msgContent = msgContent.Replace("{webtel}", siteConfig.webtel); msgContent = msgContent.Replace("{code}", strcode); msgContent = msgContent.Replace("{valid}", "二十"); //发送短信 string tipMsg = string.Empty; bool result = new BLL.sms_message().Send(mobile, msgContent, 1, out tipMsg); if (!result) { context.Response.Write("{\"status\":0, \"msg\":\"发送失败," + tipMsg + "\"}"); return; } //写入SESSION,保存验证码 context.Session[DTKeys.SESSION_SMS_CODE] = strcode; Utils.WriteCookie("user_register_sms", mobile, 2); //2分钟内无重复发送 context.Response.Write("{\"status\":1, \"msg\":\"短信发送成功,请注意查收验证码!\"}"); return; }
private string send_verify_sms_code(HttpContext context,string mobile) { //检查手机 if (string.IsNullOrEmpty(mobile)) { return "{\"status\":0, \"msg\":\"发送失败,请填写手机号码!\"}"; } //检查是否过期 string cookie = Utils.GetCookie(DTKeys.COOKIE_USER_MOBILE); if (cookie == mobile) { return "{\"status\":1, \"time\":\"" + userConfig.regsmsexpired + "\", \"msg\":\"已发送短信," + userConfig.regsmsexpired + "分钟后再试!\"}"; } Model.sms_template smsModel = new BLL.sms_template().GetModel("usercode"); //取得短信内容 if (smsModel == null) { return "{\"status\":0, \"msg\":\"发送失败,短信模板不存在,请联系管理员!\"}"; } string strcode = Utils.Number(4); //随机验证码 //替换标签 string msgContent = smsModel.content; msgContent = msgContent.Replace("{webname}", siteConfig.webname); msgContent = msgContent.Replace("{weburl}", siteConfig.weburl); msgContent = msgContent.Replace("{webtel}", siteConfig.webtel); msgContent = msgContent.Replace("{code}", strcode); msgContent = msgContent.Replace("{valid}", userConfig.regsmsexpired.ToString()); //发送短信 string tipMsg = string.Empty; bool result = new BLL.sms_message().Send(mobile, msgContent, 1, out tipMsg); if (!result) { return "{\"status\":0, \"msg\":\"发送失败," + tipMsg + "\"}"; } //写入SESSION,保存验证码 context.Session[DTKeys.SESSION_SMS_CODE] = strcode; Utils.WriteCookie(DTKeys.COOKIE_USER_MOBILE, mobile, userConfig.regsmsexpired); //规定时间内无重复发送 return "success"; }
private void user_oauth_register(HttpContext context) { //检查URL参数 if (context.Session["oauth_name"] == null) { context.Response.Write("{\"status\": 0, \"msg\": \"错误提示:授权参数不正确!\"}"); return; } //获取授权信息 string result = Vincent._DTcms.Utils.UrlExecute(siteConfig.webpath + "api/oauth/" + context.Session["oauth_name"].ToString() + "/result_json.aspx"); if (result.Contains("error")) { context.Response.Write("{\"status\": 0, \"msg\": \"错误提示:请检查URL是否正确!\"}"); return; } //反序列化JSON Dictionary <string, object> dic = JsonMapper.ToObject <Dictionary <string, object> >(result); if (dic["ret"].ToString() != "0") { context.Response.Write("{\"status\": 0, \"msg\": \"错误代码:" + dic["ret"] + "," + dic["msg"] + "\"}"); return; } string password = Vincent._DTcms.DTRequest.GetFormString("txtPassword").Trim(); string email = Vincent._DTcms.Utils.ToHtml(Vincent._DTcms.DTRequest.GetFormString("txtEmail").Trim()); string mobile = Vincent._DTcms.Utils.ToHtml(Vincent._DTcms.DTRequest.GetFormString("txtMobile").Trim()); string userip = Vincent._DTcms.DTRequest.GetIP(); BLL.users bll = new BLL.users(); Model.users model = new Model.users(); //检查默认组别是否存在 Model.user_groups modelGroup = new BLL.user_groups().GetDefault(); if (modelGroup == null) { context.Response.Write("{\"status\":0, \"msg\":\"用户尚未分组,请联系管理员!\"}"); return; } //保存注册信息 model.group_id = modelGroup.id; model.user_name = bll.GetRandomName(10); //随机用户名 model.salt = Vincent._DTcms.Utils.GetCheckCode(6); //获得6位的salt加密字符串 model.password = _DESEncrypt.Encrypt(password, model.salt); model.email = email; model.mobile = mobile; if (!string.IsNullOrEmpty(dic["nick"].ToString())) { model.nick_name = dic["nick"].ToString(); } if (dic["avatar"].ToString().StartsWith("http://")) { model.avatar = dic["avatar"].ToString(); } if (!string.IsNullOrEmpty(dic["sex"].ToString())) { model.sex = dic["sex"].ToString(); } if (!string.IsNullOrEmpty(dic["birthday"].ToString())) { model.birthday = Vincent._DTcms.Utils.StrToDateTime(dic["birthday"].ToString()); } model.reg_ip = userip; model.reg_time = DateTime.Now; model.status = 0; //设置为正常状态 int newId = bll.Add(model); if (newId < 1) { context.Response.Write("{\"status\":0, \"msg\":\"注册失败,请联系网站管理员!\"}"); return; } model = bll.GetModel(newId); //赠送积分金额 if (modelGroup.point > 0) { new BLL.user_point_log().Add(model.id, model.user_name, modelGroup.point, "注册赠送积分", false); } if (modelGroup.amount > 0) { new BLL.user_amount_log().Add(model.id, model.user_name, Vincent._DTcms.DTEnums.AmountTypeEnum.SysGive.ToString(), modelGroup.amount, "注册赠送金额", 1); } //判断是否发送欢迎消息 if (userConfig.regmsgstatus == 1) //站内短消息 { new BLL.user_message().Add(1, "", model.user_name, "欢迎您成为本站会员", userConfig.regmsgtxt); } else if (userConfig.regmsgstatus == 2) //发送邮件 { //取得邮件模板内容 Model.mail_template mailModel = new BLL.mail_template().GetModel("welcomemsg"); if (mailModel != null) { //替换标签 string mailTitle = mailModel.maill_title; mailTitle = mailTitle.Replace("{username}", model.user_name); string mailContent = mailModel.content; mailContent = mailContent.Replace("{webname}", siteConfig.webname); mailContent = mailContent.Replace("{weburl}", siteConfig.weburl); mailContent = mailContent.Replace("{webtel}", siteConfig.webtel); mailContent = mailContent.Replace("{username}", model.user_name); //发送邮件 _Email.SendMail(siteConfig.emailsmtp, siteConfig.emailusername, siteConfig.emailpassword, siteConfig.emailnickname, siteConfig.emailfrom, model.email, mailTitle, mailContent); } } else if (userConfig.regmsgstatus == 3 && mobile != "") //发送短信 { Model.sms_template smsModel = new BLL.sms_template().GetModel("welcomemsg"); //取得短信内容 if (smsModel != null) { //替换标签 string msgContent = smsModel.content; msgContent = msgContent.Replace("{webname}", siteConfig.webname); msgContent = msgContent.Replace("{weburl}", siteConfig.weburl); msgContent = msgContent.Replace("{webtel}", siteConfig.webtel); msgContent = msgContent.Replace("{username}", model.user_name); //发送短信 string tipMsg = string.Empty; new BLL.sms_message().Send(model.mobile, msgContent, 2, out tipMsg); } } //绑定到对应的授权类型 Model.user_oauth oauthModel = new Model.user_oauth(); oauthModel.oauth_name = dic["oauth_name"].ToString(); oauthModel.user_id = model.id; oauthModel.user_name = model.user_name; oauthModel.oauth_access_token = dic["oauth_access_token"].ToString(); oauthModel.oauth_openid = dic["oauth_openid"].ToString(); new BLL.user_oauth().Add(oauthModel); context.Session[Vincent._DTcms.DTKeys.SESSION_USER_INFO] = model; context.Session.Timeout = 45; //记住登录状态,防止Session提前过期 Vincent._DTcms.Utils.WriteCookie(Vincent._DTcms.DTKeys.COOKIE_USER_NAME_REMEMBER, "BuysingooShop", model.user_name); Vincent._DTcms.Utils.WriteCookie(Vincent._DTcms.DTKeys.COOKIE_USER_PWD_REMEMBER, "BuysingooShop", model.password); //写入登录日志 new BLL.user_login_log().Add(model.id, model.user_name, "会员登录"); //返回URL context.Response.Write("{\"status\":1, \"msg\":\"会员登录成功!\"}"); return; }
private string verify_mobile(Model.users userModel) { //生成随机码 string strcode = Utils.Number(4); BLL.user_code codeBll = new BLL.user_code(); Model.user_code codeModel; //检查是否重复提交 codeModel = codeBll.GetModel(userModel.user_name, DTEnums.CodeEnum.RegVerify.ToString(), "n"); if (codeModel == null) { codeModel = new Model.user_code(); codeModel.user_id = userModel.id; codeModel.user_name = userModel.user_name; codeModel.type = DTEnums.CodeEnum.RegVerify.ToString(); codeModel.str_code = strcode; codeModel.eff_time = DateTime.Now.AddMinutes(userConfig.regsmsexpired); codeModel.add_time = DateTime.Now; new BLL.user_code().Add(codeModel); } //获得短信模板内容 Model.sms_template smsModel = new BLL.sms_template().GetModel("usercode"); if (smsModel == null) { return "{\"status\":0, \"msg\":\"发送失败,短信模板内容不存在!\"}"; } //替换模板内容 string msgContent = smsModel.content; msgContent = msgContent.Replace("{webname}", siteConfig.webname); msgContent = msgContent.Replace("{webtel}", siteConfig.webtel); msgContent = msgContent.Replace("{weburl}", siteConfig.weburl); msgContent = msgContent.Replace("{username}", userModel.user_name); msgContent = msgContent.Replace("{code}", codeModel.str_code); msgContent = msgContent.Replace("{valid}", userConfig.regsmsexpired.ToString()); //发送短信 string tipMsg = string.Empty; bool sendStatus = new BLL.sms_message().Send(userModel.mobile, msgContent, 2, out tipMsg); if (!sendStatus) { return "{\"status\": 0, \"msg\": \"短信发送失败," + tipMsg + "\"}"; } return "success"; }
private void edit_order_status(HttpContext context) { //取得管理员登录信息 Model.manager adminInfo = new Web.UI.ManagePage().GetAdminInfo(); if (adminInfo == null) { context.Response.Write("{\"status\": 0, \"msg\": \"未登录或已超时,请重新登录!\"}"); return; } //取得站点配置信息 Model.siteconfig siteConfig = new BLL.siteconfig().loadConfig(); //取得订单配置信息 Model.orderconfig orderConfig = new BLL.orderconfig().loadConfig(); string order_no = MXRequest.GetString("order_no"); string edit_type = MXRequest.GetString("edit_type"); if (order_no == "") { context.Response.Write("{\"status\": 0, \"msg\": \"传输参数有误,无法获取订单号!\"}"); return; } if (edit_type == "") { context.Response.Write("{\"status\": 0, \"msg\": \"无法获取修改订单类型!\"}"); return; } BLL.orders bll = new BLL.orders(); Model.orders model = bll.GetModel(order_no); if (model == null) { context.Response.Write("{\"status\": 0, \"msg\": \"订单号不存在或已被删除!\"}"); return; } switch (edit_type.ToLower()) { case "order_confirm": //确认订单 //检查权限 if (!new BLL.manager_role().Exists(adminInfo.role_id, "order_list", MXEnums.ActionEnum.Confirm.ToString())) { context.Response.Write("{\"status\": 0, \"msg\": \"您没有确认订单的权限!\"}"); return; } if (model.status > 1) { context.Response.Write("{\"status\": 0, \"msg\": \"订单已经确认,不能重复处理!\"}"); return; } model.status = 2; model.confirm_time = DateTime.Now; if (!bll.Update(model)) { context.Response.Write("{\"status\": 0, \"msg\": \"订单确认失败!\"}"); return; } new BLL.manager_log().Add(adminInfo.id, adminInfo.user_name, MXEnums.ActionEnum.Confirm.ToString(), "确认订单号:" + model.order_no); //记录日志 #region 发送短信或邮件 if (orderConfig.confirmmsg > 0) { switch (orderConfig.confirmmsg) { case 1: //短信通知 if (string.IsNullOrEmpty(model.mobile)) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送短信<br/ >对方未填写手机号码!\"}"); return; } Model.sms_template smsModel = new BLL.sms_template().GetModel(orderConfig.confirmcallindex); //取得短信内容 if (smsModel == null) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送短信<br/ >短信通知模板不存在!\"}"); return; } //替换标签 string msgContent = smsModel.content; msgContent = msgContent.Replace("{webname}", siteConfig.webname); msgContent = msgContent.Replace("{username}", model.user_name); msgContent = msgContent.Replace("{orderno}", model.order_no); msgContent = msgContent.Replace("{amount}", model.order_amount.ToString()); //发送短信 string tipMsg = string.Empty; bool sendStatus = new BLL.sms_message().Send(model.mobile, msgContent, 2, out tipMsg); if (!sendStatus) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送短信<br/ >" + tipMsg + "\"}"); return; } break; case 2: //邮件通知 //取得用户的邮箱地址 if (model.user_id > 0) { Model.users userModel = new BLL.users().GetModel(model.user_id); if (userModel == null || string.IsNullOrEmpty(userModel.email)) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送邮件<br/ >该用户不存在或没有填写邮箱地址。\"}"); return; } //取得邮件模板内容 Model.mail_template mailModel = new BLL.mail_template().GetModel(orderConfig.confirmcallindex); if (mailModel == null) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送邮件<br/ >邮件通知模板不存在。\"}"); return; } //替换标签 string mailTitle = mailModel.maill_title; mailTitle = mailTitle.Replace("{username}", model.user_name); string mailContent = mailModel.content; mailContent = mailContent.Replace("{webname}", siteConfig.webname); mailContent = mailContent.Replace("{weburl}", siteConfig.weburl); mailContent = mailContent.Replace("{webtel}", siteConfig.webtel); mailContent = mailContent.Replace("{username}", model.user_name); mailContent = mailContent.Replace("{orderno}", model.order_no); mailContent = mailContent.Replace("{amount}", model.order_amount.ToString()); //发送邮件 MXMail.sendMail(siteConfig.emailsmtp, siteConfig.emailusername, siteConfig.emailpassword, siteConfig.emailnickname, siteConfig.emailfrom, userModel.email, mailTitle, mailContent); } break; } } #endregion context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功!\"}"); break; case "order_payment": //确认付款 //检查权限 if (!new BLL.manager_role().Exists(adminInfo.role_id, "order_list", MXEnums.ActionEnum.Confirm.ToString())) { context.Response.Write("{\"status\": 0, \"msg\": \"您没有确认付款的权限!\"}"); return; } if (model.status > 1 || model.payment_status == 2) { context.Response.Write("{\"status\": 0, \"msg\": \"订单已确认,不能重复处理!\"}"); return; } model.payment_status = 2; model.payment_time = DateTime.Now; model.status = 2; model.confirm_time = DateTime.Now; if (!bll.Update(model)) { context.Response.Write("{\"status\": 0, \"msg\": \"订单确认付款失败!\"}"); return; } new BLL.manager_log().Add(adminInfo.id, adminInfo.user_name, MXEnums.ActionEnum.Confirm.ToString(), "确认付款订单号:" + model.order_no); //记录日志 #region 发送短信或邮件 if (orderConfig.confirmmsg > 0) { switch (orderConfig.confirmmsg) { case 1: //短信通知 if (string.IsNullOrEmpty(model.mobile)) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送短信<br/ >对方未填写手机号码!\"}"); return; } Model.sms_template smsModel = new BLL.sms_template().GetModel(orderConfig.confirmcallindex); //取得短信内容 if (smsModel == null) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送短信<br/ >短信通知模板不存在!\"}"); return; } //替换标签 string msgContent = smsModel.content; msgContent = msgContent.Replace("{webname}", siteConfig.webname); msgContent = msgContent.Replace("{username}", model.user_name); msgContent = msgContent.Replace("{orderno}", model.order_no); msgContent = msgContent.Replace("{amount}", model.order_amount.ToString()); //发送短信 string tipMsg = string.Empty; bool sendStatus = new BLL.sms_message().Send(model.mobile, msgContent, 2, out tipMsg); if (!sendStatus) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送短信<br/ >" + tipMsg + "\"}"); return; } break; case 2: //邮件通知 //取得用户的邮箱地址 if (model.user_id > 0) { Model.users userModel = new BLL.users().GetModel(model.user_id); if (userModel == null || string.IsNullOrEmpty(userModel.email)) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送邮件<br/ >该用户不存在或没有填写邮箱地址。\"}"); return; } //取得邮件模板内容 Model.mail_template mailModel = new BLL.mail_template().GetModel(orderConfig.confirmcallindex); if (mailModel == null) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送邮件<br/ >邮件通知模板不存在。\"}"); return; } //替换标签 string mailTitle = mailModel.maill_title; mailTitle = mailTitle.Replace("{username}", model.user_name); string mailContent = mailModel.content; mailContent = mailContent.Replace("{webname}", siteConfig.webname); mailContent = mailContent.Replace("{weburl}", siteConfig.weburl); mailContent = mailContent.Replace("{webtel}", siteConfig.webtel); mailContent = mailContent.Replace("{username}", model.user_name); mailContent = mailContent.Replace("{orderno}", model.order_no); mailContent = mailContent.Replace("{amount}", model.order_amount.ToString()); //发送邮件 MXMail.sendMail(siteConfig.emailsmtp, siteConfig.emailusername, siteConfig.emailpassword, siteConfig.emailnickname, siteConfig.emailfrom, userModel.email, mailTitle, mailContent); } break; } } #endregion context.Response.Write("{\"status\": 1, \"msg\": \"订单确认付款成功!\"}"); break; case "order_express": //确认发货 //检查权限 if (!new BLL.manager_role().Exists(adminInfo.role_id, "order_list", MXEnums.ActionEnum.Confirm.ToString())) { context.Response.Write("{\"status\": 0, \"msg\": \"您没有确认发货的权限!\"}"); return; } if (model.status > 2 || model.express_status == 2) { context.Response.Write("{\"status\": 0, \"msg\": \"订单已完成或已发货,不能重复处理!\"}"); return; } int express_id = MXRequest.GetFormInt("express_id"); string express_no = MXRequest.GetFormString("express_no"); if (express_id == 0) { context.Response.Write("{\"status\": 0, \"msg\": \"请选择配送方式!\"}"); return; } model.express_id = express_id; model.express_no = express_no; model.express_time = DateTime.Now; string ret = ""; if (model.payment_id == 3 && model.express_status != 2) { //通知微信支付,改变发货状态 FaHuoProc fahuo = new FaHuoProc(); BLL.wx_payment_wxpay payBll = new BLL.wx_payment_wxpay(); Model.wx_payment_wxpay paymentInfo = payBll.GetModelByWid(model.wid.Value); Dictionary<string, object> fahuoDict = fahuo.fahuomgr(paymentInfo, model); string errcode = fahuoDict["errcode"].ToString(); string errmsg = fahuoDict["errmsg"].ToString(); model.fahuoCode = errcode; model.fahuoMsg = errmsg; if (errcode == "0") { model.express_status = 2; } else { ret = "通知微信支付,改变发货状态失败:"+errmsg; } } model.express_status = 2; if (!bll.Update(model)) { ret += "订单发货失败!"; context.Response.Write("{\"status\": 0, \"msg\": \"" + ret + "\"}"); return; } new BLL.manager_log().Add(adminInfo.id, adminInfo.user_name, MXEnums.ActionEnum.Confirm.ToString(), "确认发货订单号:" + model.order_no); //记录日志 #region 发送短信或邮件 if (orderConfig.expressmsg > 0) { switch (orderConfig.expressmsg) { case 1: //短信通知 if (string.IsNullOrEmpty(model.mobile)) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送短信<br/ >对方未填写手机号码!\"}"); return; } Model.sms_template smsModel = new BLL.sms_template().GetModel(orderConfig.expresscallindex); //取得短信内容 if (smsModel == null) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送短信<br/ >短信通知模板不存在!\"}"); return; } //替换标签 string msgContent = smsModel.content; msgContent = msgContent.Replace("{webname}", siteConfig.webname); msgContent = msgContent.Replace("{username}", model.user_name); msgContent = msgContent.Replace("{orderno}", model.order_no); msgContent = msgContent.Replace("{amount}", model.order_amount.ToString()); //发送短信 string tipMsg = string.Empty; bool sendStatus = new BLL.sms_message().Send(model.mobile, msgContent, 2, out tipMsg); if (!sendStatus) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送短信<br/ >" + tipMsg + "\"}"); return; } break; case 2: //邮件通知 //取得用户的邮箱地址 if (model.user_id > 0) { Model.users userModel = new BLL.users().GetModel(model.user_id); if (userModel == null || string.IsNullOrEmpty(userModel.email)) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送邮件<br/ >该用户不存在或没有填写邮箱地址。\"}"); return; } //取得邮件模板内容 Model.mail_template mailModel = new BLL.mail_template().GetModel(orderConfig.expresscallindex); if (mailModel == null) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送邮件<br/ >邮件通知模板不存在。\"}"); return; } //替换标签 string mailTitle = mailModel.maill_title; mailTitle = mailTitle.Replace("{username}", model.user_name); string mailContent = mailModel.content; mailContent = mailContent.Replace("{webname}", siteConfig.webname); mailContent = mailContent.Replace("{weburl}", siteConfig.weburl); mailContent = mailContent.Replace("{webtel}", siteConfig.webtel); mailContent = mailContent.Replace("{username}", model.user_name); mailContent = mailContent.Replace("{orderno}", model.order_no); mailContent = mailContent.Replace("{amount}", model.order_amount.ToString()); //发送邮件 MXMail.sendMail(siteConfig.emailsmtp, siteConfig.emailusername, siteConfig.emailpassword, siteConfig.emailnickname, siteConfig.emailfrom, userModel.email, mailTitle, mailContent); } break; } } #endregion context.Response.Write("{\"status\": 1, \"msg\": \"订单发货成功!\"}"); break; case "order_complete": //完成订单========================================= //检查权限 if (!new BLL.manager_role().Exists(adminInfo.role_id, "order_list", MXEnums.ActionEnum.Confirm.ToString())) { context.Response.Write("{\"status\": 0, \"msg\": \"您没有确认完成订单的权限!\"}"); return; } if (model.status > 2) { context.Response.Write("{\"status\": 0, \"msg\": \"订单已经完成,不能重复处理!\"}"); return; } model.status = 3; model.complete_time = DateTime.Now; if (!bll.Update(model)) { context.Response.Write("{\"status\": 0, \"msg\": \"确认订单完成失败!\"}"); return; } //给会员增加积分检查升级 if (model.user_id > 0 && model.point > 0) { new BLL.user_point_log().Add(model.user_id, model.user_name, model.point, "购物获得积分,订单号:" + model.order_no, true); } new BLL.manager_log().Add(adminInfo.id, adminInfo.user_name, MXEnums.ActionEnum.Confirm.ToString(), "确认交易完成订单号:" + model.order_no); //记录日志 #region 发送短信或邮件 if (orderConfig.completemsg > 0) { switch (orderConfig.completemsg) { case 1: //短信通知 if (string.IsNullOrEmpty(model.mobile)) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送短信<br/ >对方未填写手机号码!\"}"); return; } Model.sms_template smsModel = new BLL.sms_template().GetModel(orderConfig.completecallindex); //取得短信内容 if (smsModel == null) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送短信<br/ >短信通知模板不存在!\"}"); return; } //替换标签 string msgContent = smsModel.content; msgContent = msgContent.Replace("{webname}", siteConfig.webname); msgContent = msgContent.Replace("{username}", model.user_name); msgContent = msgContent.Replace("{orderno}", model.order_no); msgContent = msgContent.Replace("{amount}", model.order_amount.ToString()); //发送短信 string tipMsg = string.Empty; bool sendStatus = new BLL.sms_message().Send(model.mobile, msgContent, 2, out tipMsg); if (!sendStatus) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送短信<br/ >" + tipMsg + "\"}"); return; } break; case 2: //邮件通知 //取得用户的邮箱地址 if (model.user_id > 0) { Model.users userModel = new BLL.users().GetModel(model.user_id); if (userModel == null || string.IsNullOrEmpty(userModel.email)) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送邮件<br/ >该用户不存在或没有填写邮箱地址。\"}"); return; } //取得邮件模板内容 Model.mail_template mailModel = new BLL.mail_template().GetModel(orderConfig.completecallindex); if (mailModel == null) { context.Response.Write("{\"status\": 1, \"msg\": \"订单确认成功,但无法发送邮件<br/ >邮件通知模板不存在。\"}"); return; } //替换标签 string mailTitle = mailModel.maill_title; mailTitle = mailTitle.Replace("{username}", model.user_name); string mailContent = mailModel.content; mailContent = mailContent.Replace("{webname}", siteConfig.webname); mailContent = mailContent.Replace("{weburl}", siteConfig.weburl); mailContent = mailContent.Replace("{webtel}", siteConfig.webtel); mailContent = mailContent.Replace("{username}", model.user_name); mailContent = mailContent.Replace("{orderno}", model.order_no); mailContent = mailContent.Replace("{amount}", model.order_amount.ToString()); //发送邮件 MXMail.sendMail(siteConfig.emailsmtp, siteConfig.emailusername, siteConfig.emailpassword, siteConfig.emailnickname, siteConfig.emailfrom, userModel.email, mailTitle, mailContent); } break; } } #endregion context.Response.Write("{\"status\": 1, \"msg\": \"确认订单完成成功!\"}"); break; case "order_cancel": //取消订单========================================== //检查权限 if (!new BLL.manager_role().Exists(adminInfo.role_id, "order_list", MXEnums.ActionEnum.Cancel.ToString())) { context.Response.Write("{\"status\": 0, \"msg\": \"您没有取消订单的权限!\"}"); return; } if (model.status > 2) { context.Response.Write("{\"status\": 0, \"msg\": \"订单已经完成,不能取消订单!\"}"); return; } model.status = 4; if (!bll.Update(model)) { context.Response.Write("{\"status\": 0, \"msg\": \"取消订单失败!\"}"); return; } int check_revert1 = MXRequest.GetFormInt("check_revert"); if (check_revert1 == 1) { //如果存在积分换购则返还会员积分 if (model.user_id > 0 && model.point < 0) { new BLL.user_point_log().Add(model.user_id, model.user_name, (model.point * -1), "取消订单返还积分,订单号:" + model.order_no, false); } //如果已支付则退还金额到会员账户 if (model.user_id > 0 && model.payment_status == 2 && model.order_amount > 0) { new BLL.user_amount_log().Add(model.user_id, model.user_name, MXEnums.AmountTypeEnum.BuyGoods.ToString(), model.order_amount, "取消订单退还金额,订单号:" + model.order_no); } } new BLL.manager_log().Add(adminInfo.id, adminInfo.user_name, MXEnums.ActionEnum.Cancel.ToString(), "取消订单号:" + model.order_no); //记录日志 context.Response.Write("{\"status\": 1, \"msg\": \"取消订单成功!\"}"); break; case "order_invalid": //作废订单========================================== //检查权限 if (!new BLL.manager_role().Exists(adminInfo.role_id, "order_list", MXEnums.ActionEnum.Invalid.ToString())) { context.Response.Write("{\"status\": 0, \"msg\": \"您没有作废订单的权限!\"}"); return; } if (model.status != 3) { context.Response.Write("{\"status\": 0, \"msg\": \"订单尚未完成,不能作废订单!\"}"); return; } model.status = 5; if (!bll.Update(model)) { context.Response.Write("{\"status\": 0, \"msg\": \"作废订单失败!\"}"); return; } int check_revert2 = MXRequest.GetFormInt("check_revert"); if (check_revert2 == 1) { //扣除购物赠送的积分 if (model.user_id > 0 && model.point > 0) { new BLL.user_point_log().Add(model.user_id, model.user_name, (model.point * -1), "作废订单扣除积分,订单号:" + model.order_no, false); } //退还金额到会员账户 if (model.user_id > 0 && model.order_amount > 0) { new BLL.user_amount_log().Add(model.user_id, model.user_name, MXEnums.AmountTypeEnum.BuyGoods.ToString(), model.order_amount, "取消订单退还金额,订单号:" + model.order_no); } } new BLL.manager_log().Add(adminInfo.id, adminInfo.user_name, MXEnums.ActionEnum.Invalid.ToString(), "作废订单号:" + model.order_no); //记录日志 context.Response.Write("{\"status\": 1, \"msg\": \"作废订单成功!\"}"); break; case "edit_accept_info": //修改收货信息==================================== //检查权限 if (!new BLL.manager_role().Exists(adminInfo.role_id, "order_list", MXEnums.ActionEnum.Edit.ToString())) { context.Response.Write("{\"status\": 0, \"msg\": \"您没有修改收货信息的权限!\"}"); return; } if (model.express_status == 2) { context.Response.Write("{\"status\": 0, \"msg\": \"订单已经发货,不能修改收货信息!\"}"); return; } string accept_name = MXRequest.GetFormString("accept_name"); string province = MXRequest.GetFormString("province"); string city = MXRequest.GetFormString("city"); string area = MXRequest.GetFormString("area"); string address = MXRequest.GetFormString("address"); string post_code = MXRequest.GetFormString("post_code"); string mobile = MXRequest.GetFormString("mobile"); string telphone = MXRequest.GetFormString("telphone"); if (accept_name == "") { context.Response.Write("{\"status\": 0, \"msg\": \"请填写收货人姓名!\"}"); return; } if (area == "") { context.Response.Write("{\"status\": 0, \"msg\": \"请选择所在地区!\"}"); return; } if (address == "") { context.Response.Write("{\"status\": 0, \"msg\": \"请填写详细的送货地址!\"}"); return; } if (mobile == "" && telphone == "") { context.Response.Write("{\"status\": 0, \"msg\": \"联系手机或电话至少填写一项!\"}"); return; } model.accept_name = accept_name; model.area = province + "," + city + "," + area; model.address = address; model.post_code = post_code; model.mobile = mobile; model.telphone = telphone; if (!bll.Update(model)) { context.Response.Write("{\"status\": 0, \"msg\": \"修改收货人信息失败!\"}"); return; } new BLL.manager_log().Add(adminInfo.id, adminInfo.user_name, MXEnums.ActionEnum.Edit.ToString(), "修改收货信息,订单号:" + model.order_no); //记录日志 context.Response.Write("{\"status\": 1, \"msg\": \"修改收货人信息成功!\"}"); break; case "edit_order_remark": //修改订单备注================================= string remark = MXRequest.GetFormString("remark"); if (remark == "") { context.Response.Write("{\"status\": 0, \"msg\": \"请填写订单备注内容!\"}"); return; } model.remark = remark; if (!bll.Update(model)) { context.Response.Write("{\"status\": 0, \"msg\": \"修改订单备注失败!\"}"); return; } new BLL.manager_log().Add(adminInfo.id, adminInfo.user_name, MXEnums.ActionEnum.Edit.ToString(), "修改订单备注,订单号:" + model.order_no); //记录日志 context.Response.Write("{\"status\": 1, \"msg\": \"修改订单备注成功!\"}"); break; case "edit_real_amount": //修改商品总金额================================ //检查权限 if (!new BLL.manager_role().Exists(adminInfo.role_id, "order_list", MXEnums.ActionEnum.Edit.ToString())) { context.Response.Write("{\"status\": 0, \"msg\": \"您没有修改商品金额的权限!\"}"); return; } if (model.status > 1) { context.Response.Write("{\"status\": 0, \"msg\": \"订单已经确认,不能修改金额!\"}"); return; } decimal real_amount = MXRequest.GetFormDecimal("real_amount", 0); model.real_amount = real_amount; if (!bll.Update(model)) { context.Response.Write("{\"status\": 0, \"msg\": \"修改商品总金额失败!\"}"); return; } new BLL.manager_log().Add(adminInfo.id, adminInfo.user_name, MXEnums.ActionEnum.Edit.ToString(), "修改商品金额,订单号:" + model.order_no); //记录日志 context.Response.Write("{\"status\": 1, \"msg\": \"修改商品总金额成功!\"}"); break; case "edit_express_fee": //修改配送费用================================== //检查权限 if (!new BLL.manager_role().Exists(adminInfo.role_id, "order_list", MXEnums.ActionEnum.Edit.ToString())) { context.Response.Write("{\"status\": 0, \"msg\": \"您没有配送费用的权限!\"}"); return; } if (model.status > 1) { context.Response.Write("{\"status\": 0, \"msg\": \"订单已经确认,不能修改金额!\"}"); return; } decimal express_fee = MXRequest.GetFormDecimal("express_fee", 0); model.express_fee = express_fee; if (!bll.Update(model)) { context.Response.Write("{\"status\": 0, \"msg\": \"修改配送费用失败!\"}"); return; } new BLL.manager_log().Add(adminInfo.id, adminInfo.user_name, MXEnums.ActionEnum.Edit.ToString(), "修改配送费用,订单号:" + model.order_no); //记录日志 context.Response.Write("{\"status\": 1, \"msg\": \"修改配送费用成功!\"}"); break; case "edit_payment_fee": //修改支付手续费================================= //检查权限 if (!new BLL.manager_role().Exists(adminInfo.role_id, "order_list", MXEnums.ActionEnum.Edit.ToString())) { context.Response.Write("{\"status\": 0, \"msg\": \"您没有修改支付手续费的权限!\"}"); return; } if (model.status > 1) { context.Response.Write("{\"status\": 0, \"msg\": \"订单已经确认,不能修改金额!\"}"); return; } decimal payment_fee = MXRequest.GetFormDecimal("payment_fee", 0); model.payment_fee = payment_fee; if (!bll.Update(model)) { context.Response.Write("{\"status\": 0, \"msg\": \"修改支付手续费失败!\"}"); return; } new BLL.manager_log().Add(adminInfo.id, adminInfo.user_name, MXEnums.ActionEnum.Edit.ToString(), "修改支付手续费,订单号:" + model.order_no); //记录日志 context.Response.Write("{\"status\": 1, \"msg\": \"修改支付手续费成功!\"}"); break; } }
private void user_getpassword(HttpContext context) { string site = DTRequest.GetQueryString("site"); string code = DTRequest.GetFormString("txtCode"); string type = DTRequest.GetFormString("txtType"); string username = DTRequest.GetFormString("txtUserName").Trim(); //检查站点目录 if (string.IsNullOrEmpty(site)) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,网站传输参数有误!\"}"); return; } //检查用户名 if (string.IsNullOrEmpty(username)) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,用户名不可为空!\"}"); return; } //检查取回密码类型 if (string.IsNullOrEmpty(type)) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,请选择取回密码类型!\"}"); return; } //校检验证码 string result = verify_code(context, code); if (result != "success") { context.Response.Write(result); return; } //检查用户信息 BLL.users bll = new BLL.users(); Model.users model = bll.GetModel(username); if (model == null) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,您输入的用户名不存在!\"}"); return; } //发送取回密码的短信或邮件 if (type.ToLower() == "mobile") //使用手机取回密码 { #region 发送短信================== if (string.IsNullOrEmpty(model.mobile)) { context.Response.Write("{\"status\":0, \"msg\":\"您尚未绑定手机号码,无法取回密码!\"}"); return; } Model.sms_template smsModel = new BLL.sms_template().GetModel("usercode"); //取得短信内容 if (smsModel == null) { context.Response.Write("{\"status\":0, \"msg\":\"发送失败,短信模板不存在,请联系管理员!\"}"); } string strcode = Utils.Number(4); //随机验证码 //检查是否重复提交 BLL.user_code codeBll = new BLL.user_code(); Model.user_code codeModel; codeModel = codeBll.GetModel(username, DTEnums.CodeEnum.RegVerify.ToString(), "d"); if (codeModel == null) { codeModel = new Model.user_code(); //写入数据库 codeModel.user_id = model.id; codeModel.user_name = model.user_name; codeModel.type = DTEnums.CodeEnum.Password.ToString(); codeModel.str_code = strcode; codeModel.eff_time = DateTime.Now.AddMinutes(userConfig.regsmsexpired); codeModel.add_time = DateTime.Now; codeBll.Add(codeModel); } //替换标签 string msgContent = smsModel.content; msgContent = msgContent.Replace("{webname}", siteConfig.webname); msgContent = msgContent.Replace("{weburl}", siteConfig.weburl); msgContent = msgContent.Replace("{webtel}", siteConfig.webtel); msgContent = msgContent.Replace("{code}", codeModel.str_code); msgContent = msgContent.Replace("{valid}", userConfig.regsmsexpired.ToString()); //发送短信 string tipMsg = string.Empty; bool result1 = new BLL.sms_message().Send(model.mobile, msgContent, 1, out tipMsg); if (!result1) { context.Response.Write("{\"status\":0, \"msg\":\"发送失败," + tipMsg + "\"}"); return; } context.Response.Write("{\"status\":1, \"msg\":\"手机验证码发送成功!\", \"url\":\"" + new BasePage().getlink(site, new BasePage().linkurl("repassword", "?action=mobile&username="******"\"}"); return; #endregion } else if (type.ToLower() == "email") //使用邮箱取回密码 { #region 发送邮件================== if (string.IsNullOrEmpty(model.email)) { context.Response.Write("{\"status\":0, \"msg\":\"您尚未绑定邮箱,无法取回密码!\"}"); return; } //生成随机码 string strcode = Utils.GetCheckCode(20); //获得邮件内容 Model.mail_template mailModel = new BLL.mail_template().GetModel("getpassword"); if (mailModel == null) { context.Response.Write("{\"status\":0, \"msg\":\"邮件发送失败,邮件模板内容不存在!\"}"); return; } //检查是否重复提交 BLL.user_code codeBll = new BLL.user_code(); Model.user_code codeModel; codeModel = codeBll.GetModel(username, DTEnums.CodeEnum.RegVerify.ToString(), "d"); if (codeModel == null) { codeModel = new Model.user_code(); //写入数据库 codeModel.user_id = model.id; codeModel.user_name = model.user_name; codeModel.type = DTEnums.CodeEnum.Password.ToString(); codeModel.str_code = strcode; codeModel.eff_time = DateTime.Now.AddDays(userConfig.regemailexpired); codeModel.add_time = DateTime.Now; codeBll.Add(codeModel); } //替换模板内容 string titletxt = mailModel.maill_title; string bodytxt = mailModel.content; titletxt = titletxt.Replace("{webname}", siteConfig.webname); titletxt = titletxt.Replace("{username}", model.user_name); bodytxt = bodytxt.Replace("{webname}", siteConfig.webname); bodytxt = bodytxt.Replace("{weburl}", siteConfig.weburl); bodytxt = bodytxt.Replace("{webtel}", siteConfig.webtel); bodytxt = bodytxt.Replace("{valid}", userConfig.regemailexpired.ToString()); bodytxt = bodytxt.Replace("{username}", model.user_name); bodytxt = bodytxt.Replace("{linkurl}", "http://" + HttpContext.Current.Request.Url.Authority.ToLower() + new BasePage().getlink(site, new BasePage().linkurl("repassword", "?action=email&code=" + codeModel.str_code))); //发送邮件 try { DTMail.sendMail(siteConfig.emailsmtp, siteConfig.emailssl, siteConfig.emailusername, DESEncrypt.Decrypt(siteConfig.emailpassword), siteConfig.emailnickname, siteConfig.emailfrom, model.email, titletxt, bodytxt); } catch { context.Response.Write("{\"status\":0, \"msg\":\"邮件发送失败,请联系本站管理员!\"}"); return; } context.Response.Write("{\"status\":1, \"msg\":\"邮件发送成功,请登录邮箱查看邮件!\"}"); return; #endregion } context.Response.Write("{\"status\":0, \"msg\":\"发生未知错误,请检查参数是否正确!\"}"); return; }
private void user_register(HttpContext context) { string code = DTRequest.GetFormString("txtCode").Trim(); string invitecode = DTRequest.GetFormString("txtInviteCode").Trim(); string username = Utils.ToHtml(DTRequest.GetFormString("txtUserName").Trim()); string password = DTRequest.GetFormString("txtPassword").Trim(); string email = Utils.ToHtml(DTRequest.GetFormString("txtEmail").Trim()); string mobile = Utils.ToHtml(DTRequest.GetFormString("txtMobile").Trim()); string userip = DTRequest.GetIP(); #region 检查各项并提示 //检查是否开启会员功能 if (siteConfig.memberstatus == 0) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,会员功能已关闭,无法注册!\"}"); return; } if (userConfig.regstatus == 0) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,系统暂不允许注册新用户!\"}"); return; } //校检验证码,如果注册使用手机短信则只需验证手机验证码,否则使用网页验证码 if (userConfig.regstatus == 2) //手机验证码 { string result = verify_sms_code(context, code); if (result != "success") { context.Response.Write(result); return; } } else //网页验证码 { string result = verify_code(context, code); if (result != "success") { context.Response.Write(result); return; } } //检查用户输入信息是否为空 if (username == "" || password == "") { context.Response.Write("{\"status\":0, \"msg\":\"错误:用户名和密码不能为空!\"}"); return; } if (userConfig.regemailditto == 0 && email == "") { context.Response.Write("{\"status\":0, \"msg\":\"错误:电子邮箱不能为空!\"}"); return; } if (userConfig.mobilelogin == 1 && mobile == "") { context.Response.Write("{\"status\":0, \"msg\":\"错误:手机号码不能为空!\"}"); return; } //检查用户名 BLL.users bll = new BLL.users(); Model.users model = new Model.users(); if (bll.Exists(username)) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,该用户名已经存在!\"}"); return; } //检查同一IP注册时隔 if (userConfig.regctrl > 0) { if (bll.Exists(userip, userConfig.regctrl)) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,同IP在" + userConfig.regctrl + "小时内禁止重复注册!\"}"); return; } } //不允许同一Email注册不同用户 if (userConfig.regemailditto == 0 || userConfig.emaillogin == 1) { if (bll.ExistsEmail(email)) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,该邮箱已被注册!\"}"); return; } } //不允许同一手机号码注册不同用户 if (userConfig.mobilelogin == 1) { if (bll.ExistsMobile(mobile)) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,该手机号码已被注册!\"}"); return; } } //检查默认组别是否存在 Model.user_groups modelGroup = new BLL.user_groups().GetDefault(); if (modelGroup == null) { context.Response.Write("{\"status\":0, \"msg\":\"用户尚未分组,请联系网站管理员!\"}"); return; } //检查是否通过邀请码注册 if (userConfig.regstatus == 2) { string result1 = verify_invite_reg(username, invitecode); if (result1 != "success") { context.Response.Write(result1); return; } } #endregion //保存注册信息 model.group_id = modelGroup.id; model.user_name = username; model.salt = Utils.GetCheckCode(6); //获得6位的salt加密字符串 model.password = DESEncrypt.Encrypt(password, model.salt); model.email = email; model.mobile = mobile; model.reg_ip = userip; model.reg_time = DateTime.Now; //设置对应的状态 switch (userConfig.regverify) { case 0: model.status = 0; //正常 break; case 3: model.status = 2; //人工审核 break; default: model.status = 1; //待验证 break; } int newId = bll.Add(model); if (newId < 1) { context.Response.Write("{\"status\":0, \"msg\":\"系统故障,请联系网站管理员!\"}"); return; } model = bll.GetModel(newId); //赠送积分金额 if (modelGroup.point > 0) { new BLL.user_point_log().Add(model.id, model.user_name, modelGroup.point, "注册赠送积分", false); } if (modelGroup.amount > 0) { new BLL.user_amount_log().Add(model.id, model.user_name, DTEnums.AmountTypeEnum.SysGive.ToString(), modelGroup.amount, "注册赠送金额", 1); } #region 判断是否发送欢迎消息 if (userConfig.regmsgstatus == 1) //站内短消息 { new BLL.user_message().Add(1, "", model.user_name, "欢迎您成为本站会员", userConfig.regmsgtxt); } else if (userConfig.regmsgstatus == 2) //发送邮件 { //取得邮件模板内容 Model.mail_template mailModel = new BLL.mail_template().GetModel("welcomemsg"); if (mailModel != null) { //替换标签 string mailTitle = mailModel.maill_title; mailTitle = mailTitle.Replace("{username}", model.user_name); string mailContent = mailModel.content; mailContent = mailContent.Replace("{webname}", siteConfig.webname); mailContent = mailContent.Replace("{weburl}", siteConfig.weburl); mailContent = mailContent.Replace("{webtel}", siteConfig.webtel); mailContent = mailContent.Replace("{username}", model.user_name); //发送邮件 DTMail.sendMail(siteConfig.emailsmtp, siteConfig.emailusername, siteConfig.emailpassword, siteConfig.emailnickname, siteConfig.emailfrom, model.email, mailTitle, mailContent); } } else if (userConfig.regmsgstatus == 3 && mobile != "") //发送短信 { Model.sms_template smsModel = new BLL.sms_template().GetModel("welcomemsg"); //取得短信内容 if (smsModel != null) { //替换标签 string msgContent = smsModel.content; msgContent = msgContent.Replace("{webname}", siteConfig.webname); msgContent = msgContent.Replace("{weburl}", siteConfig.weburl); msgContent = msgContent.Replace("{webtel}", siteConfig.webtel); msgContent = msgContent.Replace("{username}", model.user_name); //发送短信 string tipMsg = string.Empty; new BLL.sms_message().Send(model.mobile, msgContent, 2, out tipMsg); } } #endregion //需要Email验证 if (userConfig.regverify == 1) { string result2 = verify_email(model); if (result2 != "success") { context.Response.Write(result2); return; } context.Response.Write("{\"status\":1, \"url\":\"" + new Web.UI.BasePage().linkurl("register") + "?action=sendmail&username="******"\", \"msg\":\"注册成功,请进入邮箱验证激活账户!\"}"); } //手机短信验证 else if (userConfig.regverify == 2) { string result3 = verify_mobile(model); if (result3 != "success") { context.Response.Write(result3); return; } context.Response.Write("{\"status\":1, \"url\":\"" + new Web.UI.BasePage().linkurl("register") + "?action=sendsms&username="******"\", \"msg\":\"注册成功,请查收短信验证激活账户!\"}"); } //需要人工审核 else if (userConfig.regverify == 3) { context.Response.Write("{\"status\":1, \"url\":\"" + new Web.UI.BasePage().linkurl("register") + "?action=verify&username="******"\", \"msg\":\"注册成功,请等待审核通过!\"}"); } else { context.Session[DTKeys.SESSION_USER_INFO] = model; context.Session.Timeout = 45; //防止Session提前过期 Utils.WriteCookie(DTKeys.COOKIE_USER_NAME_REMEMBER, "DTcms", model.user_name); Utils.WriteCookie(DTKeys.COOKIE_USER_PWD_REMEMBER, "DTcms", model.password); //写入登录日志 new BLL.user_login_log().Add(model.id, model.user_name, "会员登录"); context.Response.Write("{\"status\":1, \"url\":\"" + new Web.UI.BasePage().linkurl("register") + "?action=succeed&username="******"\", \"msg\":\"注册成功,欢迎成为本站会员!\"}"); } return; }
private void user_register(HttpContext context) { string site = DTRequest.GetQueryString("site").Trim(); //当前站点 string code = DTRequest.GetFormString("txtCode").Trim(); string username = Utils.ToHtml(DTRequest.GetFormString("txtUserName").Trim()); string password = DTRequest.GetFormString("txtPassword").Trim(); string email = Utils.ToHtml(DTRequest.GetFormString("txtEmail").Trim()); string mobile = Utils.ToHtml(DTRequest.GetFormString("txtMobile").Trim()); string userip = DTRequest.GetIP(); #region 验证各种参数信息 //检查站点目录是否正确 if (string.IsNullOrEmpty(site)) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,网站传输参数有误!\"}"); return; } //检查是否开启会员功能 if (siteConfig.memberstatus == 0) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,会员功能已关闭,无法注册!\"}"); return; } if (userConfig.regstatus == 0) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,系统暂不允许注册新用户!\"}"); return; } //检查用户输入信息是否为空 if (string.IsNullOrEmpty(username) || string.IsNullOrEmpty(password)) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,用户名和密码不能为空!\"}"); return; } //如果开启手机注册则要验证手机 if (userConfig.regstatus == 2 && string.IsNullOrEmpty(mobile)) { context.Response.Write("{\"status\":0, \"msg\":\"错误:手机号码不能为空!\"}"); return; } //如果开启邮箱注册则要验证邮箱 if (userConfig.regstatus == 3 && string.IsNullOrEmpty(email)) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,电子邮箱不能为空!\"}"); return; } //检查用户名 BLL.users bll = new BLL.users(); if (bll.Exists(username)) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,该用户名已经存在!\"}"); return; } //如果开启手机登录要验证手机 if (userConfig.mobilelogin == 1 && !string.IsNullOrEmpty(mobile)) { if (bll.ExistsMobile(mobile)) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,该手机号码已被使用!\"}"); return; } } //如果开启邮箱登录要验证邮箱 if (userConfig.emaillogin == 1 && !string.IsNullOrEmpty(email)) { if (bll.ExistsEmail(email)) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,该电子邮箱已被使用!\"}"); return; } } //检查同一IP注册时隔 if (userConfig.regctrl > 0) { if (bll.Exists(userip, userConfig.regctrl)) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,同IP在" + userConfig.regctrl + "小时内禁止重复注册!\"}"); return; } } //检查默认组别是否存在 Model.user_groups modelGroup = new BLL.user_groups().GetDefault(); if (modelGroup == null) { context.Response.Write("{\"status\":0, \"msg\":\"用户尚未分组,请联系网站管理员!\"}"); return; } //检查验证码是否正确 switch (userConfig.regstatus) { case 1: //验证网页验证码 string result1 = verify_code(context, code); if (result1 != "success") { context.Response.Write(result1); return; } break; case 2: //验证手机验证码 string result2 = verify_sms_code(context, code); if (result2 != "success") { context.Response.Write(result2); return; } break; case 4: //验证邀请码 string result4 = verify_invite_reg(username, code); if (result4 != "success") { context.Response.Write(result4); return; } break; } #endregion #region 保存用户注册信息 Model.users model = new Model.users(); model.group_id = modelGroup.id; model.user_name = username; model.salt = Utils.GetCheckCode(6); //获得6位的salt加密字符串 model.password = DESEncrypt.Encrypt(password, model.salt); model.email = email; model.mobile = mobile; model.reg_ip = userip; model.reg_time = DateTime.Now; //设置用户状态 if (userConfig.regstatus == 3) { model.status = 1; //待验证 } else if (userConfig.regverify == 1) { model.status = 2; //待审核 } else { model.status = 0; //正常 } //开始写入数据库 model.id = bll.Add(model); if (model.id < 1) { context.Response.Write("{\"status\":0, \"msg\":\"系统故障,请联系网站管理员!\"}"); return; } //检查用户组是否需要赠送积分 if (modelGroup.point > 0) { new BLL.user_point_log().Add(model.id, model.user_name, modelGroup.point, "注册赠送积分", false); } //检查用户组是否需要赠送金额 if (modelGroup.amount > 0) { new BLL.user_amount_log().Add(model.id, model.user_name, modelGroup.amount, "注册赠送金额"); } #endregion #region 是否发送欢迎消息 if (userConfig.regmsgstatus == 1) //站内短消息 { new BLL.user_message().Add(1, string.Empty, model.user_name, "欢迎您成为本站会员", userConfig.regmsgtxt); } else if (userConfig.regmsgstatus == 2 && !string.IsNullOrEmpty(email)) //发送邮件 { //取得邮件模板内容 Model.mail_template mailModel = new BLL.mail_template().GetModel("welcomemsg"); if (mailModel != null) { //替换标签 string mailTitle = mailModel.maill_title; mailTitle = mailTitle.Replace("{username}", model.user_name); string mailContent = mailModel.content; mailContent = mailContent.Replace("{webname}", siteConfig.webname); mailContent = mailContent.Replace("{weburl}", siteConfig.weburl); mailContent = mailContent.Replace("{webtel}", siteConfig.webtel); mailContent = mailContent.Replace("{username}", model.user_name); //发送邮件 DTMail.sendMail(siteConfig.emailsmtp,siteConfig.emailssl, siteConfig.emailusername, siteConfig.emailpassword, siteConfig.emailnickname, siteConfig.emailfrom, model.email, mailTitle, mailContent); } } else if (userConfig.regmsgstatus == 3 && !string.IsNullOrEmpty(mobile)) //发送短信 { Model.sms_template smsModel = new BLL.sms_template().GetModel("welcomemsg"); //取得短信内容 if (smsModel != null) { //替换标签 string msgContent = smsModel.content; msgContent = msgContent.Replace("{webname}", siteConfig.webname); msgContent = msgContent.Replace("{weburl}", siteConfig.weburl); msgContent = msgContent.Replace("{webtel}", siteConfig.webtel); msgContent = msgContent.Replace("{username}", model.user_name); //发送短信 string tipMsg = string.Empty; new BLL.sms_message().Send(model.mobile, msgContent, 2, out tipMsg); } } #endregion //需要Email验证 if (userConfig.regstatus == 3) { string result2 = send_verify_email(site, model); //发送验证邮件 if (result2 != "success") { context.Response.Write(result2); return; } context.Response.Write("{\"status\":1, \"msg\":\"注册成功,请进入邮箱验证激活账户!\", \"url\":\"" + new Web.UI.BasePage().getlink(site, new Web.UI.BasePage().linkurl("register", "?action=sendmail&username="******"\"}"); } //需要人工审核 else if (userConfig.regverify == 1) { context.Response.Write("{\"status\":1, \"msg\":\"注册成功,请等待审核通过!\", \"url\":\"" + new Web.UI.BasePage().getlink(site, new Web.UI.BasePage().linkurl("register", "?action=verify&username="******"\"}"); } else { context.Session[DTKeys.SESSION_USER_INFO] = model; context.Session.Timeout = 45; //防止Session提前过期 Utils.WriteCookie(DTKeys.COOKIE_USER_NAME_REMEMBER, "DTcms", model.user_name); Utils.WriteCookie(DTKeys.COOKIE_USER_PWD_REMEMBER, "DTcms", model.password); //写入登录日志 new BLL.user_login_log().Add(model.id, model.user_name, "会员登录"); context.Response.Write("{\"status\":1, \"msg\":\"注册成功,欢迎成为本站会员!\", \"url\":\"" + new Web.UI.BasePage().getlink(site, new Web.UI.BasePage().linkurl("usercenter", "index")) + "\"}"); } return; }
private void user_oauth_register(HttpContext context) { //检查URL参数 if (context.Session["oauth_name"] == null) { context.Response.Write("{\"status\": 0, \"msg\": \"错误提示:授权参数不正确!\"}"); return; } //获取授权信息 string result = Utils.UrlExecute(siteConfig.webpath + "api/oauth/" + context.Session["oauth_name"].ToString() + "/result_json.aspx"); if (result.Contains("error")) { context.Response.Write("{\"status\": 0, \"msg\": \"错误提示:请检查URL是否正确!\"}"); return; } string password = DTRequest.GetFormString("txtPassword").Trim(); string email = Utils.ToHtml(DTRequest.GetFormString("txtEmail").Trim()); string mobile = Utils.ToHtml(DTRequest.GetFormString("txtMobile").Trim()); string userip = DTRequest.GetIP(); //反序列化JSON Dictionary<string, object> dic = JsonHelper.DataRowFromJSON(result); if (dic["ret"].ToString() != "0") { context.Response.Write("{\"status\": 0, \"msg\": \"错误代码:" + dic["ret"] + "," + dic["msg"] + "\"}"); return; } BLL.users bll = new BLL.users(); Model.users model = new Model.users(); //如果开启手机登录要验证手机 if (userConfig.mobilelogin == 1 && !string.IsNullOrEmpty(mobile)) { if (bll.ExistsMobile(mobile)) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,该手机号码已被使用!\"}"); return; } } //如果开启邮箱登录要验证邮箱 if (userConfig.emaillogin == 1 && !string.IsNullOrEmpty(email)) { if (bll.ExistsEmail(email)) { context.Response.Write("{\"status\":0, \"msg\":\"对不起,该电子邮箱已被使用!\"}"); return; } } //检查默认组别是否存在 Model.user_groups modelGroup = new BLL.user_groups().GetDefault(); if (modelGroup == null) { context.Response.Write("{\"status\":0, \"msg\":\"用户尚未分组,请联系管理员!\"}"); return; } //保存注册信息 model.group_id = modelGroup.id; model.user_name = bll.GetRandomName(10); //随机用户名 model.salt = Utils.GetCheckCode(6); //获得6位的salt加密字符串 model.password = DESEncrypt.Encrypt(password, model.salt); model.email = email; model.mobile = mobile; if (!string.IsNullOrEmpty(dic["nick"].ToString())) { model.nick_name = dic["nick"].ToString(); } if (dic["avatar"].ToString().StartsWith("http://")) { model.avatar = dic["avatar"].ToString(); } if (!string.IsNullOrEmpty(dic["sex"].ToString())) { model.sex = dic["sex"].ToString(); } if (!string.IsNullOrEmpty(dic["birthday"].ToString())) { model.birthday = Utils.StrToDateTime(dic["birthday"].ToString()); } model.reg_ip = userip; model.reg_time = DateTime.Now; model.status = 0; //设置为正常状态 model.id = bll.Add(model); //保存数据 if (model.id < 1) { context.Response.Write("{\"status\":0, \"msg\":\"注册失败,请联系网站管理员!\"}"); return; } //赠送积分金额 if (modelGroup.point > 0) { new BLL.user_point_log().Add(model.id, model.user_name, modelGroup.point, "注册赠送积分", false); } if (modelGroup.amount > 0) { new BLL.user_amount_log().Add(model.id, model.user_name, modelGroup.amount, "注册赠送金额"); } //判断是否发送欢迎消息 if (userConfig.regmsgstatus == 1) //站内短消息 { new BLL.user_message().Add(1, "", model.user_name, "欢迎您成为本站会员", userConfig.regmsgtxt); } else if (userConfig.regmsgstatus == 2) //发送邮件 { //取得邮件模板内容 Model.mail_template mailModel = new BLL.mail_template().GetModel("welcomemsg"); if (mailModel != null) { //替换标签 string mailTitle = mailModel.maill_title; mailTitle = mailTitle.Replace("{username}", model.user_name); string mailContent = mailModel.content; mailContent = mailContent.Replace("{webname}", siteConfig.webname); mailContent = mailContent.Replace("{weburl}", siteConfig.weburl); mailContent = mailContent.Replace("{webtel}", siteConfig.webtel); mailContent = mailContent.Replace("{username}", model.user_name); //发送邮件 DTMail.sendMail(siteConfig.emailsmtp, siteConfig.emailssl, siteConfig.emailusername, siteConfig.emailpassword, siteConfig.emailnickname, siteConfig.emailfrom, model.email, mailTitle, mailContent); } } else if (userConfig.regmsgstatus == 3 && mobile != "") //发送短信 { Model.sms_template smsModel = new BLL.sms_template().GetModel("welcomemsg"); //取得短信内容 if (smsModel != null) { //替换标签 string msgContent = smsModel.content; msgContent = msgContent.Replace("{webname}", siteConfig.webname); msgContent = msgContent.Replace("{weburl}", siteConfig.weburl); msgContent = msgContent.Replace("{webtel}", siteConfig.webtel); msgContent = msgContent.Replace("{username}", model.user_name); //发送短信 string tipMsg = string.Empty; new BLL.sms_message().Send(model.mobile, msgContent, 2, out tipMsg); } } //绑定到对应的授权类型 Model.user_oauth oauthModel = new Model.user_oauth(); oauthModel.oauth_name = dic["oauth_name"].ToString(); oauthModel.user_id = model.id; oauthModel.user_name = model.user_name; oauthModel.oauth_access_token = dic["oauth_access_token"].ToString(); oauthModel.oauth_openid = dic["oauth_openid"].ToString(); new BLL.user_oauth().Add(oauthModel); context.Session[DTKeys.SESSION_USER_INFO] = model; context.Session.Timeout = 45; //记住登录状态,防止Session提前过期 Utils.WriteCookie(DTKeys.COOKIE_USER_NAME_REMEMBER, "DTcms", model.user_name); Utils.WriteCookie(DTKeys.COOKIE_USER_PWD_REMEMBER, "DTcms", model.password); //写入登录日志 new BLL.user_login_log().Add(model.id, model.user_name, "会员登录"); //返回URL context.Response.Write("{\"status\":1, \"msg\":\"会员登录成功!\"}"); return; }