protected string BindMobPrizeList() { string mob = Request["mob"]; if (Common.ValidateHelper.IsMobile(mob) == false) { return("mob_err"); } string str = ""; DataTable listdata = new Db.OrderInfoDal().GetList(" and Mob='" + mob + "' and Jx<>'参与奖' and States=1"); if (listdata.Rows.Count <= 0) { return("has_no"); } foreach (DataRow row in listdata.Rows) { //string mob = row["Mob"].ToString().Substring(0, 3) + "****" + row["Mob"].ToString().Substring(7, 4); string jx = row["Jx"].ToString(); str += "<li><b>" + mob + "</b><p>" + jx + "</p></li>"; } return(str); }
/// <summary> /// 参与趋势与中奖趋势 /// </summary> /// <returns></returns> public Model.ReturnValue GetPartakeTrend() { Model.ReturnValue rv = new Model.ReturnValue(); Dictionary <string, string> Person = new Dictionary <string, string>(); Db.OrderInfoDal OrderInfoDal = new Db.OrderInfoDal(); #region 参与人次 string sql = " select a.Hours name,(select COUNT(1) from OrderInfo where DATEPART(hh, CreateTime) = a.hours) as value from hoursinfo a"; DataTable dt = Db.ConDal.GetList(sql); Person.Add("Data1", Common.JsonHelper.DataTableToJson(dt)); #endregion #region 中奖人次 string sql2 = " select a.Hours name,(select COUNT(1) from OrderInfo where DATEPART(hh, CreateTime) = a.hours and Jx<>'参与奖') as value from hoursinfo a"; DataTable dt2 = Db.ConDal.GetList(sql2); Person.Add("Data2", Common.JsonHelper.DataTableToJson(dt2)); #endregion rv.ObjectValue = Person; rv.Success = true; rv.ErrMessage = "获取成功"; return(rv); }
protected void Page_Load(object sender, EventArgs e) { id = 2; if (!IsPostBack) { if (id > 0) { Model.ZpConfigModel model = dal.GetModel(id); this.txtzjl1.Text = model.Zjl1.ToString(); this.txtzjl2.Text = model.Zjl2.ToString(); this.txtzjl3.Text = model.Zjl3.ToString(); this.txtzjl4.Text = model.Zjl4.ToString(); this.txtzjl5.Text = model.Zjl5.ToString(); this.txtzjl6.Text = model.Zjl6.ToString(); this.txtzjl7.Text = model.Zjl7.ToString(); this.txtzjl8.Text = model.Zjl8.ToString(); this.txtzjl9.Text = model.Zjl9.ToString(); this.txtzjl10.Text = model.Zjl10.ToString(); this.txtzjl11.Text = model.Zjl11.ToString(); this.txtzjl12.Text = model.Zjl12.ToString(); this.txtzjl13.Text = model.Zjl13.ToString(); this.txtzjl14.Text = model.Zjl14.ToString(); this.txtzjl15.Text = model.Zjl15.ToString(); this.txtzjl16.Text = model.Zjl16.ToString(); this.txtzjl17.Text = model.Zjl17.ToString(); this.txtzjl18.Text = model.Zjl18.ToString(); this.txtzjl19.Text = (100 - model.Zjl1 - model.Zjl2 - model.Zjl3 - model.Zjl4 - model.Zjl5 - model.Zjl6).ToString(); Db.OrderInfoDal ordal = new Db.OrderInfoDal(); //int one_daycont = ordal.CheckCount(" and Jx='一等奖'");//总 //int one_daycont2 = ordal.CheckCount(" and Jx='一等奖' and datediff(day,[createtime],getdate())=1");//昨 //int one_daycont3 = ordal.CheckCount(" and Jx='一等奖' and datediff(day,[createtime],getdate())=0");//今 //this.tday1.InnerText = "昨:" + one_daycont2 + " 今:" + one_daycont3 + " 总:" + one_daycont; //int two_daycont = ordal.CheckCount(" and Jx='二等奖'");//总 //int two_daycont2 = ordal.CheckCount(" and Jx='二等奖' and datediff(day,[createtime],getdate())=1");//昨 //int two_daycont3 = ordal.CheckCount(" and Jx='二等奖' and datediff(day,[createtime],getdate())=0");//今 //this.tday2.InnerText = "昨:" + two_daycont2 + " 今:" + two_daycont3 + " 总:" + two_daycont; //int three_daycont = ordal.CheckCount(" and Jx='三等奖'");//总 //int three_daycont2 = ordal.CheckCount(" and Jx='三等奖' and datediff(day,[createtime],getdate())=1");//昨 //int three_daycont3 = ordal.CheckCount(" and Jx='三等奖' and datediff(day,[createtime],getdate())=0");//今 //this.tday3.InnerText = "昨:" + three_daycont2 + " 今:" + three_daycont3 + " 总:" + three_daycont; //int four_daycont = ordal.CheckCount(" and Jx='四等奖'");//总 //int four_daycont2 = ordal.CheckCount(" and Jx='四等奖' and datediff(day,[createtime],getdate())=1");//昨 //int four_daycont3 = ordal.CheckCount(" and Jx='四等奖' and datediff(day,[createtime],getdate())=0");//今 //this.tday4.InnerText = "昨:" + four_daycont2 + " 今:" + four_daycont3 + " 总:" + four_daycont; //int five_daycont = ordal.CheckCount(" and Jx='参与奖'");//总 //int five_daycont2 = ordal.CheckCount(" and Jx='参与奖' and datediff(day,[createtime],getdate())=1");//昨 //int five_daycont3 = ordal.CheckCount(" and Jx='参与奖' and datediff(day,[createtime],getdate())=0");//今 //this.tday5.InnerText = "昨:" + five_daycont2 + " 今:" + five_daycont3 + " 总:" + five_daycont; } } }
protected string BindPrizeList() { string str = ""; DataTable listdata = new Db.OrderInfoDal().GetTopList(" and Jx<>'参与奖' and States=1"); foreach (DataRow row in listdata.Rows) { string mob = row["Mob"].ToString().Substring(0, 3) + "****" + row["Mob"].ToString().Substring(7, 4); string jx = row["Jx"].ToString(); str += "<li><b>" + mob + "</b><p>" + jx + "</p></li>"; } return(str); }
/// <summary> /// 奖项统计 /// </summary> /// <returns></returns> public Model.ReturnValue GetAwardStatistics() { Model.ReturnValue rv = new Model.ReturnValue(); Dictionary <string, object> Person = new Dictionary <string, object>(); Db.OrderInfoDal OrderInfoDal = new Db.OrderInfoDal(); Db.AwardsStatisticsDal AwardsStatisticsDal = new Db.AwardsStatisticsDal(); //获取中奖奖项统计订单 List <Model.AwardsStatisticsModel> AwardsStatisticsList = AwardsStatisticsDal.GetModelList().Where(w => w.AwardsType == 1 && w.AwardsId != 7).ToList(); #region 中奖人数 List <SeriesData> DrawData = new List <SeriesData>(); foreach (var model in AwardsStatisticsList) { DrawData.Add(new SeriesData() { name = model.AwardsName, value = model.AllTotal }); } Person.Add("Data1", DrawData); #endregion #region 发奖人数 string sql = " select a.AwardsName name,(select COUNT(1) from [OrderInfo] where Jx=a.AwardsName) as value from AwardsStatistics a where AwardsType = 1 and AwardsId <> 7"; //string sql = "select jx as name,count(jx) as value FROM [OrderInfo] group by jx"; DataTable dt = Db.ConDal.GetList(sql); Person.Add("Data2", Common.JsonHelper.DataTableToJson(dt)); #endregion rv.ObjectValue = Person; rv.Success = true; rv.ErrMessage = "获取成功"; return(rv); }
/// <summary> /// 执行指定方法 /// </summary> private static void ExecuteMethod(Model.DelayedAwardsModel DelayedModel, PrizeParameter Parameter) { try { if (DelayedModel.Id > 0 && DelayedModel.StatusId == 0) { Model.OrderInfoModel OrderModel = new Db.OrderInfoDal().GetModel(DelayedModel.OrderId); if (OrderModel.Id > 0) { //发放奖品 SendPrize(DelayedModel, OrderModel, Parameter); } } } catch (Exception ex) { Common.Email.EmailTool.sendEmail(System.Configuration.ConfigurationManager.AppSettings["LogErrorEmailTo"], "延时发奖异常", ex.ToString(), ""); } }
/// <summary> /// OCR预录 /// </summary> /// <param name="OrderCode">订单号</param> /// <param name="Hashdata">签名</param> /// <param name="FileName">图片名称</param> /// <returns></returns> public string OcrRecorded(string OrderCode, string Hashdata, string FileName) { #region OCR预录 string temp = ""; if (WebFramework.GeneralMethodBase.GetKeyConfig(23).States == 1) { int limitCount = Common.TypeHelper.ObjectToInt(WebFramework.GeneralMethodBase.GetKeyConfig(24).Val, 0); BDImgApi.APIKey.appUserName = WebFramework.GeneralMethodBase.GetKeyConfig(25).Val; BDImgApi.APIKey.appKey = WebFramework.GeneralMethodBase.GetKeyConfig(26).Val; BDImgApi.APIKey.appSecret = WebFramework.GeneralMethodBase.GetKeyConfig(27).Val; Task <string> task1 = Task.Factory.StartNew <string>(() => { // WriteLog(message); try { int RecordedCount = new Db.OrderInfoDal().CheckCount(string.Format(" and IdCard='{0}'", DateTime.Now.ToString("yyyyMMdd"))); if (RecordedCount <= limitCount) { BDImgApi.GetApiResult Result = new BDImgApi.GetApiResult(); return(Result.GetMatchingImg(Hashdata, "1", FileName, OrderCode, false).errMsg); } return("调用已超限"); } catch (Exception ex) { return("出现异常-" + ex.Message); } }); temp = task1.Result; } return(temp); #endregion }
/// <summary> /// 全国参与分布图 /// </summary> /// <returns></returns> public Model.ReturnValue GetWholeCountry() { Model.ReturnValue rv = new Model.ReturnValue(); Dictionary <string, string> Person = new Dictionary <string, string>(); Db.OrderInfoDal OrderInfoDal = new Db.OrderInfoDal(); #region IP地归 string sql = " select right([IpAddress],(charindex('-',[IpAddress])-1)) as name,count([IpAddress]) as value FROM [OrderInfo] group by [IpAddress]"; DataTable dt = Db.ConDal.GetList(sql); Person.Add("Data1", Common.JsonHelper.DataTableToJson(dt)); #endregion rv.ObjectValue = Person; rv.Success = true; rv.ErrMessage = "获取成功"; return(rv); }
protected void Page_Load(object sender, EventArgs e) { Response.Write("订单异常"); Response.End(); return; #region 验证用户登录信息 Model.UserInfoModel UserSession = GetUserSession(); if (UserSession == null || new Db.UserInfoDal().Exists(GetUserSession().UserName) == false) { Response.Write("账户登录已失效,请重新登录~!"); Response.End(); return; } #endregion Db.OrderInfoDal odal = new Db.OrderInfoDal(); int id = Common.TypeHelper.ObjectToInt(Request["id"], 0); Model.OrderInfoModel model = odal.GetModel(id); string ty = Request["ty"]; string msg = ""; string hideMsg = ""; #region 操作日志订单 Db.Operation_LogDal logDal = new Db.Operation_LogDal(); Model.Operation_LogModel mdlog = new Model.Operation_LogModel(); mdlog.CreateTime = DateTime.Now; mdlog.Description = ""; mdlog.LStatus = model.States; mdlog.Mobile = model.Mob; mdlog.OperationType = ""; mdlog.OrderCode = model.OrderCode; mdlog.Status = 0; mdlog.UpdateTime = DateTime.Now; mdlog.UserName = UserSession.UserName; mdlog.Remark = ""; mdlog.HideContent = ""; #endregion #region 批量删除 if (ty == "del") { string Delid = Request["Delid"]; if (string.IsNullOrEmpty(Delid)) { Response.Write("请勾选订单!"); Response.End(); return; } string[] idlist = Delid.Split(','); List <Model.OrderInfoModel> orderlist = new List <Model.OrderInfoModel>(); foreach (string Did in idlist) { Model.OrderInfoModel ordel = new Model.OrderInfoModel(); ordel.Id = Common.TypeHelper.ObjectToInt(Did, 0); if (ordel.Id > 0) { orderlist.Add(ordel); } } int delcont = odal.Del(orderlist); if (delcont > 0) { #region 记录操作日志 mdlog.Description = "Delid:" + Delid; mdlog.OperationType = "批量删除"; logDal.Add(mdlog); #endregion Response.Write("删除成功!"); Response.End(); return; } else { Response.Write("删除失败!"); Response.End(); return; } } #endregion #region 批量作废 if (ty == "zflist") { string Delid = Request["Delid"]; if (string.IsNullOrEmpty(Delid)) { Response.Write("请勾选订单!"); Response.End(); return; } string[] idlist = Delid.Split(','); List <Model.OrderInfoModel> orderlist = new List <Model.OrderInfoModel>(); foreach (string Did in idlist) { Model.OrderInfoModel ordel = new Model.OrderInfoModel(); ordel.Id = Common.TypeHelper.ObjectToInt(Did, 0); if (ordel.Id > 0) { orderlist.Add(ordel); } } int delcont = odal.Update(orderlist); if (delcont > 0) { #region 记录操作日志 mdlog.Description = "Delid:" + Delid; mdlog.OperationType = "批量作废"; logDal.Add(mdlog); #endregion Response.Write("作废成功!"); Response.End(); return; } else { Response.Write("作废失败!"); Response.End(); return; } } #endregion #region 批量OCR预审勾选小票 if (ty == "recorded") { string Delid = Request["Delid"]; if (string.IsNullOrEmpty(Delid)) { Response.Write("请勾选订单!"); Response.End(); return; } BDImgApi.APIKey.appUserName = WebFramework.GeneralMethodBase.GetKeyConfig(25).Val; // BDImgApi.APIKey.appKey = WebFramework.GeneralMethodBase.GetKeyConfig(26).Val;; // BDImgApi.APIKey.appSecret = WebFramework.GeneralMethodBase.GetKeyConfig(27).Val;; // //Task<string> task1 = Task.Factory.StartNew<string>(() => //{ string ResultStr = ""; try { string[] idlist = Delid.Split(','); List <Model.OrderInfoModel> orderlist = new List <Model.OrderInfoModel>(); foreach (string Did in idlist) { int OId = Common.TypeHelper.ObjectToInt(Did, 0); if (OId > 0) { Model.OrderInfoModel ordel = odal.GetModel(OId); if (ordel.Id > 0) { BDImgApi.GetApiResult Result = new BDImgApi.GetApiResult(); Model.FileInfoModel FileModel = new Db.FileInfoDal().GetModel(ordel.FilesId); if (FileModel.Id > 0) { ResultStr += Result.GetMatchingImg(FileModel.Hashdata, "1", FileModel.FileName, ordel.OrderCode, false).errMsg + ","; } } } //Thread.Sleep(20000); } //return ResultStr; } catch (Exception ex) { //return ResultStr; } //}); #region 记录操作日志 mdlog.Description = "Idlist:" + Delid; mdlog.OperationType = "批量OCR预审勾选小票"; logDal.Add(mdlog); #endregion Response.Write("成功"); Response.End(); return; } #endregion #region 批量OCR预审未录入小票 if (ty == "recordedAll") { BDImgApi.APIKey.appUserName = WebFramework.GeneralMethodBase.GetKeyConfig(25).Val; // BDImgApi.APIKey.appKey = WebFramework.GeneralMethodBase.GetKeyConfig(26).Val;; // BDImgApi.APIKey.appSecret = WebFramework.GeneralMethodBase.GetKeyConfig(27).Val;; // string ResultStr = ""; try { List <Model.OrderInfoModel> Notorderlist = odal.GetModelNotOCRList(); foreach (Model.OrderInfoModel NotModel in Notorderlist) { if (NotModel.Id > 0) { BDImgApi.GetApiResult Result = new BDImgApi.GetApiResult(); Model.FileInfoModel FileModel = new Db.FileInfoDal().GetModel(NotModel.FilesId); if (FileModel.Id > 0) { ResultStr += Result.GetMatchingImg(FileModel.Hashdata, "1", FileModel.FileName, NotModel.OrderCode, false).errMsg + ","; } } } } catch (Exception ex) { } #region 记录操作日志 mdlog.Description = "" + ResultStr; mdlog.OperationType = "批量OCR预审未录入小票"; logDal.Add(mdlog); #endregion Response.Write("成功"); Response.End(); return; } #endregion #region 恢复订单 if (model.Id > 0 && ty == "back" && model.States == -1) { if (UserSession.GroupId != 2) { Response.Write("请联系管理员执行此操作"); Response.End(); return; } model.States = 0; mdlog.Status = model.States; mdlog.OperationType = "恢复订单状态"; model.UpdateTime = DateTime.Now; int i = odal.EditOrder(model, mdlog); if (i > 0) { Response.Write("修改成功"); Response.End(); return; } Response.Write("恢复失败"); Response.End(); return; } #endregion #region 审核订单 if (model.Id > 0 && model.States == 0) { #region 作废 if (ty == "zf") { model.States = -1; msg = WebFramework.GeneralMethodBase.GetMsg(1); mdlog.OperationType = "作废订单"; } #endregion #region 无法审核 else if (ty == "no") { model.Note = "无法审核"; mdlog.OperationType = "无法审核订单"; //if (model.Note == "无法审核") { // model.Note = ""; // mdlog.OperationType = "修改无法审核订单状态"; //} } #endregion #region 添加备注 else if (ty == "note") { string nums = Request["nums"]; //流水号 string store = Request["store"]; //门店名称 string price = Request["price"]; //金额 string times = Request["times"]; //日期 #region 验证输入信息 if (string.IsNullOrEmpty(nums) == false) { if (Common.ValidateHelper.IsCode(nums) == false) { Response.Write("请输入正确的流水号!"); Response.End(); return; } } if (string.IsNullOrEmpty(store) == false) { if (Common.ValidateHelper.IsAddrs(store) == false) { Response.Write("请输入正确的门店信息!"); Response.End(); return; } } if (string.IsNullOrEmpty(price) == false) { if (Common.ValidateHelper.IsNumeric(price) == false) { Response.Write("请输入正确的金额!"); Response.End(); return; } } if (string.IsNullOrEmpty(times) == false) { if (Common.ValidateHelper.IsDate(times) == false) { Response.Write("请输入正确的时间!"); Response.End(); return; } } #endregion model.Title = store; model.Texts = nums; model.Tdate = times; model.Age = price; mdlog.Description = model.Title + "-" + model.Texts + "-" + model.Tdate + "-" + model.Age; mdlog.OperationType = "添加备注"; if (Convert.ToInt32(new BDImgApi.GetApiResult().CheckProductByWhere(string.Format(" and SerialNumber='{0}' and Note not in ('{1}')", nums, model.OrderCode))) > 0) { Response.Write("该流水号小票云审核已有订单录入"); Response.End(); return; } if (odal.CheckCount(string.Format(" and Texts='{0}' and Id not in ({1})", nums, model.Id)) > 0) { Response.Write("该流水号已存在"); Response.End(); return; } int upcont = odal.UpdateAdds(model, mdlog); if (upcont > 0) { Response.Write("添加备注成功"); Response.End(); return; } } #endregion #region 审核通过 else if (ty == "ok") { if (model.Jx == "三等奖") { #region 发送红包 Common.RedPackHelper rp = new Common.RedPackHelper(); int moeny = model.RedPackMoney; if (WebFramework.GeneralMethodBase.GetKeyConfig(3).States == 1) { moeny = 100; } if (WebFramework.GeneralMethodBase.GetKeyConfig(6).Val.ToLower() == "false") //红包开关 { Response.Write("微信红包发放未开启,请联系管理员"); Response.End(); return; } int acid = Common.TypeHelper.ObjectToInt(WebFramework.GeneralMethodBase.GetKeyConfig(29).Val, 0); int hid = acid; string ckey = WebFramework.GeneralMethodBase.GetKeyConfig(30).Val; string hkey = WebFramework.GeneralMethodBase.GetKeyConfig(31).Val; Common.RedPackHelper.result result = rp.send(acid, hid, model.OpenId, model.HbOrderCode, moeny, ckey, hkey); if (result.SendStatus == false) { Response.Write(result.MSG); Response.End(); return; } #endregion } else { Response.Write("奖项无需审核发奖"); Response.End(); return; } model.States = 1; mdlog.OperationType = "审核通过订单"; } #endregion else { Response.Write("订单异常"); Response.End(); return; } mdlog.Status = model.States; mdlog.Description = hideMsg;//隐藏串码 短信 mdlog.HideContent = msg; model.Account = UserSession.UserName; model.UpdateTime = DateTime.Now; int i = odal.EditOrder(model, mdlog); if (i > 0) { #region 发送短信 if (msg.Length > 10 && model.States == 1 && ty == "ok" && model.PrizeCode.Length > 5) { // Common.MessageApi.SendZtMessage(msg, model.Mob, Common.TypeHelper.ObjectToInt(WebFramework.GeneralMethodBase.GetKeyConfig(20).Val, 0), WebFramework.GeneralMethodBase.GetKeyConfig(21).Val); } #endregion Response.Write("修改成功"); } else { Response.Write("修改失败"); } Response.End(); return; } #endregion Response.Write("订单已审核"); Response.End(); return; }
//生成订单 public Model.ReturnValue ProcessCode(HttpContext context) { Model.ReturnValue result = new Model.ReturnValue(); #region 验证Session result = CheckSession(); if (result.Success == false) { ESLogMethod.ESLogInstance.Debug("Session不通过", ""); return(result); } #endregion string OpenId = orderSession.OpenId; string Mobile = context.Request["mob"]; //string Code = context.Request["code"]; #region 验证OpenId if (Common.ValidateHelper.IsOpenid(OpenId) == false) { ESLogMethod.ESLogInstance.Debug("Openid格式异常", OpenId); result.ErrMessage = "系统繁忙,请稍后再试"; result.Success = false; return(result); } #endregion #region 验证手机号 if (Common.ValidateHelper.IsMobile(Mobile) == false) { ESLogMethod.ESLogInstance.Debug("手机号错误", Mobile); result.ErrMessage = "请填写正确手机号"; result.Success = false; return(result); } #endregion string Ip = Common.ClientIP.GetIp(); int FileId = orderSession.FileId; #region 检查IP if (Db.Security.IpAccessControlDal.CheckIpIsOK(false, CacheBase.IPSettingModel, Ip, "", "") == false) { ESLogMethod.ESLogInstance.Debug("IP模型超过限制", Ip); result.ErrMessage = "系统繁忙,请稍后再试"; result.Success = false; return(result); } #endregion #region //验证激活码 //if (Common.ValidateHelper.IsCode(Code, 13) == false) //{ // #region 登记IP // Db.Security.IpAccessControlDal.CheckIpIsOK(true, CacheBase.IPSettingModel, Ip, Code, "激活码格式错误"); // #endregion // ESLogMethod.ESLogInstance.Debug("激活码格式错误", Code, Mobile); // result.ErrMessage = "请填写正确的激活码"; // result.Success = false; // return result; //} #endregion lock (_SyncLock) { //Model.PassCodeInfoModel PassCodeModel = PassCodeDal.GetModelByCode(Code); #region //验证激活码状态 //if (PassCodeModel.Id <= 0) //{ // #region 登记IP // Db.Security.IpAccessControlDal.CheckIpIsOK(true, CacheBase.IPSettingModel, Ip, Code, "库无此激活码"); // #endregion // ESLogMethod.ESLogInstance.Debug("激活码不存在", Code, Mobile); // result.ErrMessage = "请填写正确的激活码"; // result.Success = false; // return result; //} //if (PassCodeModel.StatusId == 1) //{ // Model.OrderInfoModel orderdel = OrderDal.GetModelByCode(Code); // if (orderdel.Id <= 0) // { // #region 登记IP // Db.Security.IpAccessControlDal.CheckIpIsOK(true, CacheBase.IPSettingModel, Ip, Code, "订单无此串码"); // #endregion // ESLogMethod.ESLogInstance.Debug("激活码已激活无订单", Code, Mobile); // result.ErrMessage = "请填写正确的激活码"; // result.Success = false; // return result; // } // if (orderdel.OpenId != OpenId) // { // ESLogMethod.ESLogInstance.Debug("激活码已绑定其他微信号", OpenId, Code); // result.ErrMessage = "激活码已绑定其他微信号"; // result.Success = false; // return result; // } // result.ErrMessage = "提交成功"; // result.Success = true; // return result; //} #endregion #region 检查手机号-openid-IP 参与次数是否超限 string maxcont = WebFramework.OrderService.OrderMethod.OrderInstance.CheckMobOpidIp(Mobile, OpenId, Ip); if (string.IsNullOrEmpty(maxcont) == false) { ESLogMethod.ESLogInstance.Debug("参与次数超限", maxcont); result.ErrMessage = maxcont; result.Success = false; return(result); } #endregion Model.FileInfoModel filedel = new Db.FileInfoDal().GetModel(FileId); if (filedel.Id <= 0) { WebFramework.GeneralMethodBase.WebDebugLog(OpenId, "小票不存在:" + FileId); result.ErrMessage = "请上传小票"; result.Success = false; return(result); } #region 验证小票是否重复 if (Common.TypeHelper.ObjectToBool(WebFramework.GeneralMethodBase.GetKeyConfig(11).Val, true)) { int RepetCount = new Db.OrderInfoDal().CheckFilesRepeatCount(filedel.Hashdata); if (RepetCount > 0) { filedel.States = -1; } } #endregion #region 抽奖-保存订单 int goid = WebFramework.GeneralMethodBase.GenerationOrderId(0); #region 抽奖 Model.AwardsStatisticsModel PrizeModel = WebFramework.GeneralMethodBase.GetPrize(3, 1); #endregion Model.OrderInfoModel model = new Model.OrderInfoModel(); model.OrderCode = WebFramework.GeneralMethodBase.CreateOrderCode(goid); model.Jx = PrizeModel.AwardsName; model.Jp = PrizeModel.PrizeName; model.DateStamp = DateTime.Now.ToString("yyyyMMdd"); model.Ip = Ip; model.IpAddress = string.Join("-", Common.ClientIP.GetArrayAdds(model.Ip)); model.CreateTime = DateTime.Now; model.OpenId = OpenId; model.Mob = Mobile; model.FilesId = FileId; if (filedel.States == -1) { model.States = filedel.States;//-1表示已作废 } else { model.States = 2;//2------>表示上传未抽奖 } #region 抽取红包奖项 Model.AwardsStatisticsModel RedPackPrizeModel = new Model.AwardsStatisticsModel(); if (model.Jp == "微信红包") { //RedPackPrizeModel = WebFramework.GeneralMethodBase.GetPrize(7, 2); //model.HbOrderCode = WebFramework.GeneralMethodBase.CreateHbCode(goid);//创建红包单号 //model.RedPackMoney = Common.TypeHelper.ObjectToInt(RedPackPrizeModel.PrizeName, 0);//获取红包金额 } #endregion #region 节流 //if (WebFramework.PrivacyDemand.PrivacyMethod.PrivacyInstance.Throttling()) //{ // model.States = 1; //} #endregion //PassCodeModel.Mob = Mobile; //PassCodeModel.StatusId = 1; //PassCodeModel.ActiveTime = DateTime.Now; //PassCodeModel.OpenId = model.OpenId; Model.OrderLogModel mdlog = new Model.OrderLogModel(); mdlog.OId = 0; mdlog.OrderCode = model.OrderCode; mdlog.Mob = Mobile; mdlog.UpTime = DateTime.Now; mdlog.LStatus = 0; mdlog.Status = 1; mdlog.Notes = ""; int OrderId = 0;//插入订单ID //此方法不可替换更改,因与抽奖查询关联 if (OrderDal.AddOrderInfo_UpdatePassCodeInfo_AddOrderLog(model, null, mdlog, PrizeModel.Id, RedPackPrizeModel.Id, ref OrderId) > 0) { #region 虚拟订单 WebFramework.PrivacyDemand.PrivacyMethod.PrivacyInstance.AddFictitiousOrder(model); #endregion #region 发送自动作废短信 if (model.States == -1) { WebFramework.GeneralMethodBase.GetMsg(2, model.Mob, model.OrderCode); } #endregion orderSession.OrderKey = model.OrderCode; SessionMethod.SessionInstance.SetSession(orderSession); result.ErrMessage = "提交成功"; result.Success = true; return(result);; } #endregion } ESLogMethod.ESLogInstance.Error("添加订单失败", Mobile); result.ErrMessage = "系统繁忙,请稍后再试"; result.Success = false; return(result); }
public Model.ReturnValue ProcessUpload(HttpContext context) { Model.ReturnValue result = new Model.ReturnValue(); #region 验证Session result = CheckSession(); if (result.Success == false) { ESLogMethod.ESLogInstance.Debug("Session不通过", ""); return(result); } #endregion string OpenId = orderSession.OpenId; string Mobile = context.Request["mob"]; int FileId = orderSession.FileId; string Ip = Common.ClientIP.GetIp(); #region 验证OpenId if (Common.ValidateHelper.IsOpenid(OpenId) == false) { ESLogMethod.ESLogInstance.Debug("Openid格式异常", OpenId, Mobile); result.ErrMessage = "系统繁忙,请稍后再试"; result.Success = false; return(result); } #endregion #region 验证手机号 if (Common.ValidateHelper.IsMobile(Mobile) == false) { ESLogMethod.ESLogInstance.Debug("手机号错误", Mobile); result.ErrMessage = "请填写正确手机号"; result.Success = false; return(result); } #endregion lock (_SyncLock) { #region 验证小票 Model.FileInfoModel filedel = new Db.FileInfoDal().GetModel(FileId); if (filedel.Id <= 0) { ESLogMethod.ESLogInstance.Debug("小票不存在", FileId.ToString(), Mobile); result.ErrMessage = "请上传小票"; result.Success = false; return(result); } #region 验证小票是否重复 if (Common.TypeHelper.ObjectToBool(WebFramework.GeneralMethodBase.GetKeyConfig(11).Val, true)) { int RepetCount = new Db.OrderInfoDal().CheckFilesRepeatCount(filedel.Hashdata); if (RepetCount > 0) { filedel.States = -1; } } #endregion #endregion #region 检查是否有中奖未完善信息订单 //Model.OrderInfoModel Nomobdel = oddal.GetModel(string.Format(" Mob='{0}' and Types=0 and Jx<>'参与奖' and States=0", mob)); //if (Nomobdel.Id > 0) //{ // orderSession.Id = Nomobdel.Id; // returnErro(context, "true", "提交成功", ""); // context.Response.End(); // return; //} #endregion #region 检查手机号-openid-IP 参与次数是否超限 string maxcont = WebFramework.OrderService.OrderMethod.OrderInstance.CheckMobOpidIp(Mobile, OpenId, Ip); if (string.IsNullOrEmpty(maxcont) == false) { ESLogMethod.ESLogInstance.Debug("参与总数超限", maxcont); result.ErrMessage = maxcont; result.Success = false; return(result); } #endregion #region 抽奖-保存订单 int goid = WebFramework.GeneralMethodBase.GenerationOrderId(0); #region 抽奖 Model.AwardsStatisticsModel PrizeModel = WebFramework.GeneralMethodBase.GetPrize(7, 1); #endregion Model.OrderInfoModel model = new Model.OrderInfoModel(); model.Jx = PrizeModel.AwardsName; model.OrderCode = WebFramework.GeneralMethodBase.CreateOrderCode(goid); model.Jp = PrizeModel.PrizeName; model.States = filedel.States; model.DateStamp = DateTime.Now.ToString("yyyyMMdd"); model.Ip = Ip; model.IpAddress = string.Join("-", Common.ClientIP.GetArrayAdds(model.Ip)); model.CreateTime = DateTime.Now; model.OpenId = OpenId; model.Mob = Mobile; model.FilesId = FileId; #region 抽取红包奖项 Model.AwardsStatisticsModel RedPackPrizeModel = new Model.AwardsStatisticsModel(); if (model.Jp == "微信红包") { //RedPackPrizeModel = WebFramework.GeneralMethodBase.GetPrize(7, 2); //model.HbOrderCode = WebFramework.GeneralMethodBase.CreateHbCode(goid);//创建红包单号 //model.RedPackMoney = Common.TypeHelper.ObjectToInt(RedPackPrizeModel.PrizeName, 0);//获取红包金额 } #endregion int OrderId = 0; //此方法不可替换更改,因与抽奖查询关联 if (oddal.AddOrderInfo_UpdatePassCodeInfo_AddOrderLog(model, null, null, PrizeModel.Id, RedPackPrizeModel.Id, ref OrderId) > 0) { #region 发送自动作废短信 if (model.States == -1) { WebFramework.GeneralMethodBase.GetMsg(2, model.Mob, model.OrderCode); } #endregion #region OCR预录 if (filedel != null) { WebFramework.OrderService.OrderMethod.OrderInstance.OcrRecorded(model.OrderCode, filedel.Hashdata, filedel.FileName); } #endregion orderSession.Id = OrderId; WebFramework.SessionManage.SessionMethod.SessionInstance.SetSession(orderSession); result.ErrMessage = "提交成功"; result.Success = true; return(result); } #endregion } ESLogMethod.ESLogInstance.Error("添加订单失败", Mobile); result.ErrMessage = "系统繁忙,请稍后再试"; result.Success = false; return(result); }
public Model.ReturnValue ProcessUploadFiles(HttpContext context) { Model.ReturnValue result = new Model.ReturnValue(); #region 验证Session result = CheckSession(); if (result.Success == false) { ESLogMethod.ESLogInstance.Debug("Session不通过", ""); return(result); } #endregion string OpenId = orderSession.OpenId; int FileId = orderSession.FileId; int orderId = Common.TypeHelper.ObjectToInt(orderSession.Id, 0); #region 验证openid if (Common.ValidateHelper.IsOpenid(OpenId) == false) { ESLogMethod.ESLogInstance.Debug("OpenId格式不正确", OpenId, orderId.ToString()); result.ErrMessage = "系统繁忙,请稍后再试"; result.Success = false; return(result); } #endregion #region 验证小票 Model.FileInfoModel filedel = new Db.FileInfoDal().GetModel(FileId); if (filedel.Id <= 0) { ESLogMethod.ESLogInstance.Debug("小票不存在", FileId.ToString(), orderId.ToString()); result.ErrMessage = "请上传小票"; result.Success = false; return(result); } #region 验证小票是否重复 if (Common.TypeHelper.ObjectToBool(WebFramework.GeneralMethodBase.GetKeyConfig(11).Val, true)) { int RepetCount = new Db.OrderInfoDal().CheckFilesRepeatCount(filedel.Hashdata); if (RepetCount > 0) { filedel.States = -1; } } #endregion #endregion lock (_PrizeLock) { #region 验证订单Id Model.OrderInfoModel orderdel = oddal.GetModel(orderId); if (orderId <= 0) { ESLogMethod.ESLogInstance.Debug("订单ID不存在", orderId.ToString()); result.ErrMessage = "系统繁忙,请稍后再试"; result.Success = false; return(result); } if (orderdel.FilesId > 0) { result.ErrMessage = "提交成功"; result.Success = false; return(result); } if (OpenId != orderdel.OpenId) { ESLogMethod.ESLogInstance.Debug("OpenId与订单不匹配", OpenId, orderId.ToString()); result.ErrMessage = "系统繁忙,请稍后再试"; result.Success = false; return(result); } #endregion orderdel.FilesId = FileId; orderdel.States = filedel.States; Model.OrderLogModel OrderLog = new Model.OrderLogModel(); OrderLog.OId = orderdel.Id; OrderLog.Mob = orderdel.Mob; OrderLog.OrderCode = orderdel.OrderCode; OrderLog.LStatus = 9;//上传小票 OrderLog.Notes = orderdel.FilesId + ";" + orderdel.States; OrderLog.Status = 1; OrderLog.UpTime = DateTime.Now; if (oddal.UpdateFiles(orderdel, OrderLog) > 0) { #region 发送自动作废短信 if (orderdel.States == -1) { WebFramework.GeneralMethodBase.GetMsg(2, orderdel.Mob, orderdel.OrderCode); } #endregion #region OCR预录 if (filedel != null) { WebFramework.OrderService.OrderMethod.OrderInstance.OcrRecorded(orderdel.OrderCode, filedel.Hashdata, filedel.FileName); } #endregion result.ErrMessage = "提交成功"; result.Success = true; return(result); } ESLogMethod.ESLogInstance.Error("修改订单失败", orderId.ToString()); result.ErrMessage = "系统繁忙,请稍后再试"; result.Success = false; return(result); } }
/// <summary> /// 参与统计 /// </summary> /// <returns></returns> public Model.ReturnValue GetWheaterStatistics() { Model.ReturnValue rv = new Model.ReturnValue(); Dictionary <string, List <SeriesData> > Person = new Dictionary <string, List <SeriesData> >(); Db.OrderInfoDal OrderInfoDal = new Db.OrderInfoDal(); Db.AwardsStatisticsDal AwardsStatisticsDal = new Db.AwardsStatisticsDal(); //获取奖项统计订单 List <Model.AwardsStatisticsModel> AwardsStatisticsList = AwardsStatisticsDal.GetModelList().Where(w => w.AwardsType == 1).ToList(); #region 昨日 List <SeriesData> YesterdayData = new List <SeriesData>(); YesterdayData.Add(new SeriesData() { name = "参与人次", value = AwardsStatisticsList.Sum(s => s.YesterdayTotal) }); YesterdayData.Add(new SeriesData() { name = "中奖人次", value = AwardsStatisticsList.Where(w => w.AwardsId != 7).ToList().Sum(s => s.YesterdayTotal) }); YesterdayData.Add(new SeriesData() { name = "发奖人次", value = OrderInfoDal.CheckCount(string.Format(" and Jx<>'参与奖' and States=1 and DateStamp='{0}'", DateTime.Now.AddDays(-1).ToString("yyyyMMdd"))) }); Person.Add("Data1", YesterdayData); #endregion #region 今日 List <SeriesData> TodayData = new List <SeriesData>(); TodayData.Add(new SeriesData() { name = "参与人次", value = AwardsStatisticsList.Sum(s => s.TodayTotal) }); TodayData.Add(new SeriesData() { name = "中奖人次", value = AwardsStatisticsList.Where(w => w.AwardsId != 7).ToList().Sum(s => s.TodayTotal) }); TodayData.Add(new SeriesData() { name = "发奖人次", value = OrderInfoDal.CheckCount(string.Format(" and Jx<>'参与奖' and States=1 and DateStamp='{0}'", DateTime.Now.ToString("yyyyMMdd"))) }); Person.Add("Data2", TodayData); #endregion #region 累计 List <SeriesData> AllData = new List <SeriesData>(); AllData.Add(new SeriesData() { name = "参与人次", value = AwardsStatisticsList.Sum(s => s.AllTotal) }); AllData.Add(new SeriesData() { name = "中奖人次", value = AwardsStatisticsList.Where(w => w.AwardsId != 7).ToList().Sum(s => s.AllTotal) }); AllData.Add(new SeriesData() { name = "发奖人次", value = OrderInfoDal.CheckCount(string.Format(" and Jx<>'参与奖' and States=1 ")) }); Person.Add("Data3", AllData); #endregion rv.ObjectValue = Person; rv.Success = true; rv.ErrMessage = "获取成功"; return(rv); }
/// <summary> /// 项目体检 /// </summary> /// <returns></returns> public string ObjectPhysical() { string PhysicalMsg = ""; #region 检查激活码是否创建多单 int CodeRepeatOrder = new Db.OrderInfoDal().GetCodeRepeatList("Code", 1, "").Rows.Count; if (CodeRepeatOrder > 0) { PhysicalMsg += "激活码创建多单-"; } #endregion #region 检查手机号总数是否超过限制 int MobAllCont = Common.TypeHelper.ObjectToInt(WebFramework.GeneralMethodBase.GetKeyConfig(37).Val, 0); if (MobAllCont >= 0) { int MobBeyondOrder = new Db.OrderInfoDal().GetCodeRepeatList("Mob", MobAllCont, "").Rows.Count; if (MobBeyondOrder > 0) { PhysicalMsg += "手机号总数超过限制总数-"; } } #endregion #region 检查手机号每日总数是否超过限制 int MobDayCont = Common.TypeHelper.ObjectToInt(WebFramework.GeneralMethodBase.GetKeyConfig(34).Val, 0); if (MobDayCont >= 0) { int MobBeyondOrder = new Db.OrderInfoDal().GetCodeRepeatList("Mob", MobDayCont, "and [DateStamp]='" + DateTime.Now.ToString("yyyyMMdd") + "'").Rows.Count; if (MobBeyondOrder > 0) { PhysicalMsg += "手机号每日总数超过限制总数-"; } } #endregion #region 检查OpenId总数是否超过限制 int OpenIdAllCont = Common.TypeHelper.ObjectToInt(WebFramework.GeneralMethodBase.GetKeyConfig(38).Val, 0); if (OpenIdAllCont >= 0) { int OpenIdBeyondOrder = new Db.OrderInfoDal().GetCodeRepeatList("OpenId", OpenIdAllCont, "").Rows.Count; if (OpenIdBeyondOrder > 0) { PhysicalMsg += "OpenId总数超过限制总数-"; } } #endregion #region 检查OpenId每日总数是否超过限制 int OpenIdDayCont = Common.TypeHelper.ObjectToInt(WebFramework.GeneralMethodBase.GetKeyConfig(35).Val, 0); if (OpenIdDayCont >= 0) { int OpenIdBeyondOrder = new Db.OrderInfoDal().GetCodeRepeatList("OpenId", OpenIdDayCont, "and [DateStamp]='" + DateTime.Now.ToString("yyyyMMdd") + "'").Rows.Count; if (OpenIdBeyondOrder > 0) { PhysicalMsg += "OpenId每日总数超过限制总数-"; } } #endregion #region 检查IP总数是否超过限制 int IPAllCont = Common.TypeHelper.ObjectToInt(WebFramework.GeneralMethodBase.GetKeyConfig(39).Val, 0); if (IPAllCont >= 0) { int IPBeyondOrder = new Db.OrderInfoDal().GetCodeRepeatList("IP", IPAllCont, "").Rows.Count; if (IPBeyondOrder > 0) { PhysicalMsg += "IP总数超过限制总数-"; } } #endregion #region 检查IP每日总数是否超过限制 int IPDayCont = Common.TypeHelper.ObjectToInt(WebFramework.GeneralMethodBase.GetKeyConfig(36).Val, 0); if (IPDayCont >= 0) { int IPBeyondOrder = new Db.OrderInfoDal().GetCodeRepeatList("IP", IPDayCont, "and [DateStamp]='" + DateTime.Now.ToString("yyyyMMdd") + "'").Rows.Count; if (IPBeyondOrder > 0) { PhysicalMsg += "IP每日总数超过限制总数-"; } } #endregion PhysicalMsg = PhysicalMsg.TrimEnd('-'); if (string.IsNullOrEmpty(PhysicalMsg) == false) { WebFramework.GeneralMethodBase.SendErroEmail(PhysicalMsg); } return(string.IsNullOrEmpty(PhysicalMsg) ? "项目正常" : PhysicalMsg); }
public string CheckMobOpidIp(string mob, string opid, string Ip) { Db.OrderInfoDal oddal = new Db.OrderInfoDal(); string ReturnMsg = ""; #region 验证手机号参与次数是否超限 if (string.IsNullOrEmpty(mob) == false) { int mobCount = 0; ReturnMsg = WebFramework.GeneralMethodBase.GetKeyConfig(40).Val; int mobAllcont = Common.TypeHelper.ObjectToInt(WebFramework.GeneralMethodBase.GetKeyConfig(37).Val, 0); if (mobAllcont >= 0) { mobCount = oddal.CheckCount(string.Format(" and Mob='{0}'", mob)); if (mobCount >= mobAllcont) { return(ReturnMsg.Replace("每日", "").Replace("$mob$", mobAllcont.ToString()));; } } int mobcont = Common.TypeHelper.ObjectToInt(WebFramework.GeneralMethodBase.GetKeyConfig(34).Val, 0); if (mobcont >= 0) { mobCount = oddal.CheckCount(string.Format(" and Mob='{0}' and DateStamp='{1}' ", mob, DateTime.Now.ToString("yyyyMMdd"))); if (mobCount >= mobcont) { return(ReturnMsg.Replace("$mob$", mobcont.ToString()));; } } } #endregion #region 验证Openid参与次数是否超限 if (string.IsNullOrEmpty(opid) == false) { int OpenidCount = 0; ReturnMsg = WebFramework.GeneralMethodBase.GetKeyConfig(41).Val; int opidAllcont = Common.TypeHelper.ObjectToInt(WebFramework.GeneralMethodBase.GetKeyConfig(38).Val, 0); if (opidAllcont >= 0) { OpenidCount = oddal.CheckCount(string.Format(" and OpenId='{0}'", opid)); if (OpenidCount >= opidAllcont) { return(ReturnMsg.Replace("每日", "").Replace("$opid$", opidAllcont.ToString()));; } } int opidcont = Common.TypeHelper.ObjectToInt(WebFramework.GeneralMethodBase.GetKeyConfig(35).Val, 0); if (opidcont >= 0) { OpenidCount = oddal.CheckCount(string.Format(" and OpenId='{0}' and DateStamp='{1}' ", opid, DateTime.Now.ToString("yyyyMMdd"))); if (OpenidCount >= opidcont) { return(ReturnMsg.Replace("$opid$", opidcont.ToString())); } } } #endregion #region 验证Ip参与次数是否超限 if (string.IsNullOrEmpty(Ip) == false) { int IpCount = 0; ReturnMsg = WebFramework.GeneralMethodBase.GetKeyConfig(42).Val; int ipAllcont = Common.TypeHelper.ObjectToInt(WebFramework.GeneralMethodBase.GetKeyConfig(39).Val, 0); if (ipAllcont >= 0) { IpCount = oddal.CheckCount(string.Format(" and Ip='{0}'", Ip)); if (IpCount >= ipAllcont) { return(ReturnMsg); } } int ipcont = Common.TypeHelper.ObjectToInt(WebFramework.GeneralMethodBase.GetKeyConfig(36).Val, 0); if (ipcont >= 0) { IpCount = oddal.CheckCount(string.Format(" and Ip='{0}' and DateStamp='{1}' ", Ip, DateTime.Now.ToString("yyyyMMdd"))); if (IpCount >= ipcont) { return(ReturnMsg); } } } #endregion return(""); }