public override bool Response(ref ShareLotteryPlanClass optPlan)
        {
            KeyText hasLottery = getLottery();

            if (hasLottery == null)//未找到彩种,先确认彩种
            {
                TheAskWaitingUserAnswer ask = new TheAskWaitingUserAnswer(this);
                this.lastAsk = ask;
                ask.LastRequestWaitResponse = this;
                string sendmsg = @"请根据我提供的问题选择您需要推荐的彩种:" +
                                 "{0}";

                ask.askData = ShareLotteryPlanClass.AllLottery;


                string fullmsg = string.Format(sendmsg, ask.AskText);
                ask.askMsg = fullmsg;
                wxprocess.InjectAsk(ask);
                this.answerMsg(fullmsg);
                return(true);
            }
            else//如果提供了彩票品种,直接反馈信息
            {
            }

            return(true);
            //return base.Response();
        }
Пример #2
0
        bool ProcessProviteMsg(wxMessageClass wxmsg)
        {
            ResponseAction_Chat   rc  = new ResponseAction_Chat(this, wxmsg);
            ShareLotteryPlanClass opt = null;

            rc.Response(ref opt);
            return(true);
        }
 public override bool Response(ref ShareLotteryPlanClass optPlan)
 {
     optPlan = null;
     if (currPlan != null)
     {
         optPlan = currPlan;
     }
     answerMsg(optPlan == null?"本群目前没有合买":null);
     return(true);
 }
Пример #4
0
        public override bool ResponseAsk(TheAskWaitingUserAnswer ask)
        {
            //wxprocess.CopyToHistoryAsks(ask);
            // wxprocess.CloseCurrAsk(ask);
            if (ask.AnswerResult.key == "0")//结束流程
            {
                answerMsg("欢迎下次使用!");
                return(false);
            }
            else
            {
                ShareLotteryPlanClass plan = null;
                if (ask.UserResponseAnswer.Count == 1) //确定上次的金额
                {
                    if (Buffs.Count != 2)
                    {
                        answerMsg("上次存储的指令信息丢失!请重新申请");
                        return(false);
                    }
                    string signatrue = "";

                    //if (signatrue.ToString().ToUpper().Equals(sha1result))
                    //{

                    //}
                    try
                    {
                        Task.Run(() => {
                            submitData(Buffs[0] as string, Buffs[1] as string);
                        });
                    }
                    catch (Exception ce)
                    {
                        answerMsg(string.Format("{0}:{1}", ce.Message, ce.StackTrace));
                        //throw ce;
                        return(false);
                    }
                }
                else
                {
                    answerMsg("请重新提交条件!");
                    return(false);
                }

                return(false);
            }
            return(false);
        }
Пример #5
0
        ////public void GetObjectData(SerializationInfo info, StreamingContext context)
        ////{
        ////    try
        ////    {
        ////        info.AddValue("WXMsgProcess_ProcessName", ProcessName);
        ////        info.AddValue("WXMsgProcess_SendMsg", SendMsg, typeof(Func<string, string, string>));
        ////        info.AddValue("WXMsgProcess_SharePlanChanged", SharePlanChanged, typeof(Action<string, ShareLotteryPlanClass>));
        ////        info.AddValue("WXMsgProcess_MsgChanged", MsgChanged, typeof(Action<string, wxMessageClass>));
        ////        info.AddValue("WXMsgProcess_AllPlan", AllPlan, typeof(ShareLotteryPlanCollection));
        ////    }
        ////    catch(Exception ce)
        ////    {

        ////    }

        ////    //base.GetObjectData(info, context);

        ////    //info.AddValue("WXMsgProcess_Value", Value);
        ////}
        ////protected WXMsgProcess(SerializationInfo info, StreamingContext context)
        ////{
        ////    try
        ////    {
        ////        ProcessName = info.GetString("WXMsgProcess_ProcessName");
        ////        SendMsg = (Func<string, string, string>)info.GetValue("WXMsgProcess_SendMsg", typeof(Func<string, string, string>));
        ////        SharePlanChanged = (Action<string, ShareLotteryPlanClass>)info.GetValue("WXMsgProcess_SharePlanChanged",  typeof(Action<string, ShareLotteryPlanClass>));
        ////        MsgChanged = (Action<string, wxMessageClass>)info.GetValue("WXMsgProcess_MsgChanged", typeof(Action<string, wxMessageClass>));
        ////        AllPlan = (ShareLotteryPlanCollection)info.GetValue("WXMsgProcess_AllPlan", typeof(ShareLotteryPlanCollection));
        ////    }
        ////    catch(Exception ce)
        ////    {

        ////    }
        ////}
        #endregion
        ////public void ReceiveMsg()
        ////{
        ////    RefreshMsg(sender, msgs);
        ////}

        public void RefreshMsg(object sender, List <wxMessageClass> msgs)
        {
            wxMessageClass wxmsg = null;

            try
            {
                for (int i = 0; i < msgs.Count; i++)
                {
                    wxmsg = msgs[i];
                    //if(wxmsg.FromMemberNikeName == null)
                    //{
                    //    continue;
                    //}
                    if (SystemSetting.saveMsg == "1")//如果保存记录
                    {
                        Task.Run(() => {
                            saveMsg(wxmsg);
                        });
                    }
                    if (!wxmsg.IsAtToMe)
                    {
                        if (wxmsg.ToUserName == RobotUserName && SystemSetting.allProviteChat == "1")//个人对我说的话,转入私聊
                        {
                            ProcessProviteMsg(wxmsg);
                        }
                        //if(wxmsg.ToUserName == )
                        continue;
                    }
                    MsgChanged?.Invoke(wxmsg.FromMemberNikeName, wxmsg); //更新消息
                    ShareLotteryPlanClass optPlan = null;
                    if (!ProcessOneMsg(wxmsg, ref optPlan))              //不是群内对我说的话
                    {
                        continue;
                    }
                    if (optPlan != null)
                    {
                        AllPlan.setCurrPlan(optPlan);
                        SharePlanChanged?.Invoke(optPlan.wxRootName, optPlan);
                    }
                }
            }
            catch (Exception ce)
            {
                SendMsg?.Invoke(string.Format("{0}:{1}", ce.Message, ce.StackTrace), wxmsg.FromUserNam);
            }
        }
Пример #6
0
        bool ProcessOneMsg(wxMessageClass wxmsg, ref ShareLotteryPlanClass optPlan)
        {
            ActionDefine define     = null;
            ActionType   curraction = checkTheAction(wxmsg, ref define);

            if (waitingAsk != null)
            {
                if (waitingAsk.ContainsKey(wxmsg.FromUserNam) && waitingAsk[wxmsg.FromUserNam].ContainsKey(wxmsg.FromMemberUserName))
                {
                    //如果回复的人就是等待回答清单中的人,首先判断是否是回复,如果不是回复,宣布首先回答我的问题,其他问题无效,等下再问
                    if (curraction != ActionType.ValidateInfo)
                    {
                        TheAskWaitingUserAnswer askObj = waitingAsk[wxmsg.FromUserNam][wxmsg.FromMemberUserName];
                        string msg = string.Format(@"@{0} 请您先回答我刚才提出的问题!在回答之前我不会接受你其他任何请求.
{1}", wxmsg.FromMemberNikeName, askObj.askMsg);
                        SendMsg(msg, wxmsg.FromUserNam);
                        return(false);
                    }
                }
            }


            ResponseActionClass rac = ResponseActionClass.CreateAction(curraction, this, wxmsg);

            rac.actionDefine = define;
            if (rac == null)
            {
                optPlan = null;
                return(false);
            }
            if (curraction == ActionType.Undefined)
            {
                rac.currPlan = null;
            }
            else
            {
                rac.currPlan = AllPlan.getCurrRoomPlan(wxmsg.FromUserNam);
            }
            return(rac.Response(ref optPlan));

            if (curraction == ActionType.Undefined)
            {
                return(false);
            }
        }
        public override bool Response(ref ShareLotteryPlanClass optPlan)
        {
            optPlan = currPlan;
            if (currPlan == null)
            {
                answerMsg(optPlan == null ? "本群目前没有合买" : null);
                return(false);
            }
            if (currPlan.creator != requestUser)
            {
                answerMsg(string.Format("本次合买由{0}创建,您没有修改权限!", currPlan.creatorNike));
                return(false);
            }
            if (currPlan.sharePlanStatus != SharePlanStatus.Ready)
            {
                answerMsg("合买处于非初始状态,提供合买信息无效!");
                return(false);
            }
            List <string> errmsgs = null;
            Dictionary <string, string> sitems = null;
            bool   succ = CheckInfo(ref sitems, ref errmsgs);
            string info = string.Join("\r\n", sitems.Select(a => string.Format("{0}=>{1}", a.Key, a.Value)));

            if (succ)
            {
                TheAskWaitingUserAnswer ask = new TheAskWaitingUserAnswer(this);
                this.Buffs.Add(sitems);
                ask.askData = MutliLevelData.createAValidateSubmitData("1", "确定", "0", "取消");
                ask.askMsg  = string.Format(@"{0}
请确定您提供的信息无误?如果确定,我们将开始进入认购环节!
{1}",
                                            info,
                                            ask.AskText);
                wxprocess.InjectAsk(ask);
                answerMsg(ask.askMsg);
                return(false);
            }
            else
            {
                string m = string.Format(@"下列信息有误,请修改后重新提交正确的信息:
{0}", string.Join(";", errmsgs));
                answerMsg(m);
            }
            return(true);
        }
        public override bool Response(ref ShareLotteryPlanClass optPlan)
        {
            optPlan = null;

            if (currPlan != null)
            {
                optPlan = currPlan;
            }
            if (currPlan == null)
            {
                answerMsg(optPlan == null ? "本群目前没有合买" : null);
                return(false);
            }
            if (currPlan.creator != requestUser)
            {
                answerMsg(string.Format("本次合买由{0}创建,您没有修改权限!", currPlan.creatorNike));
                return(false);
            }
            currstatus = currPlan.sharePlanStatus;
            if (changeToStatus == currstatus)
            {
                answerMsg(string.Format("状态{0}!", newStatusName));
                return(false);
            }
            if (((int)changeToStatus - (int)currstatus) > 1 && changeToStatus != SharePlanStatus.Completed)
            {
                answerMsg(string.Format("除非关闭合买,否则合买状态不能越级操作!"));
                return(false);
            }
            if (updateVals != null)
            {
                Buffs.Add(updateVals);
            }
            TheAskWaitingUserAnswer ask = new TheAskWaitingUserAnswer(this);

            ask.askData = MutliLevelData.createAValidateSubmitData("1", "确定", "0", "取消");
            ask.askMsg  = string.Format(@"请确定将合买状态修改为{0}!
{1}",
                                        newStatusName,
                                        ask.AskText);
            wxprocess.InjectAsk(ask);
            answerMsg(ask.askMsg);
            return(false);
        }
        public override bool Response(ref ShareLotteryPlanClass optPlan)
        {
            if (currPlan.sharePlanStatus != SharePlanStatus.Subscribing)
            {
                answerMsg(string.Format("合买处于非{0}状态,认购份数无效!", ShareLotteryPlanClass.StatusDic[SharePlanStatus.Subscribing]));
                return(false);
            }
            Regex           regTr  = new Regex(@"(\d+)");
            MatchCollection mcs    = regTr.Matches(pureMsg);
            int             shares = 0;

            if (mcs.Count > 0)
            {
                int.TryParse(mcs[0].Value, out shares);
            }
            var    version = Regex.Replace(pureMsg, @"(.*\[)(.*)(\].*)", "$2"); //小括号()
            Regex  rgx     = new Regex(@"(?i)(?<=\[)(.*)(?=\])");               //中括号[]
            string tmp     = rgx.Match(pureMsg).Value;                          //中括号[]

            if (shares == 0 || mcs.Count == 0)
            {
                string ret = "你耍我,提供真正的份数!";


                answerMsg(ret);
                return(false);
            }
            TheAskWaitingUserAnswer ask = new TheAskWaitingUserAnswer(this);

            this.Buffs.Add(shares);
            ask.askData = MutliLevelData.createAValidateSubmitData("1", "确定", "0", "取消");
            ask.askMsg  = string.Format(@"您的认购分数为:{0}份,合计金额:{1}元;
请确定您提供的信息无误?
{2}",
                                        shares,
                                        shares * currPlan.shareAmount,
                                        ask.AskText);
            wxprocess.InjectAsk(ask);
            answerMsg(ask.askMsg);
            return(false);
        }
        public override bool ResponseAsk(TheAskWaitingUserAnswer ask)
        {
            ShareLotteryPlanClass slp = new ShareLotteryPlanClass();

            if (!ShareLotteryPlanClass.AllLotteryNameKeys.ContainsKey(ask.AnswerResult.text))
            {
                answerMsg(string.Format("无法找到彩种{0}对应的编号,请联系管理员修改配置!", ask.AnswerResult.text));
                return(false);
            }
            slp.betLottery      = ShareLotteryPlanClass.AllLotteryNameKeys[ask.AnswerResult.text];
            slp.wxRootNo        = roomId;
            slp.wxRootName      = roomName;
            slp.createTime      = DateTime.Now;
            slp.creator         = requestUser;
            slp.creatorNike     = requestNike;
            slp.sharePlanStatus = SharePlanStatus.Ready;
            this.answerMsg(slp.ToUserCreateModel());
            this.currPlan = slp;
            //wxprocess.AllPlan.Add(slp.guid, slp);
            return(true);
        }
Пример #11
0
        public override bool Response(ref ShareLotteryPlanClass optPlan)
        {//(.*?)手动下注(|:)((\d+|.*)/(.*)\d+((/\d+)?))((\+|\s)((\d+|.*)/\d+((/\d+)?)))*
            Regex           regTr       = new Regex(@"有(.*?)[的券|券|吗]");
            MatchCollection mcs         = regTr.Matches(pureMsg);
            string          lotteryName = null;
            string          content     = null;

            if (mcs.Count == 1)
            {
                lotteryName = mcs[0].Groups[1].Value;
                content     = mcs[0].Groups[3].Value;
                lotteryName = lotteryName.Replace("没有", "").Replace("的优惠", "").Replace("优惠", "").Replace("的券", "").Replace("券", "");
            }
            else
            {
                answerMsg("抱歉,本汪无法理解您提交的内容!");
                return(false);
            }
            TheAskWaitingUserAnswer ask = new TheAskWaitingUserAnswer(this);

            this.Buffs.Clear();
            this.Buffs.Add(lotteryName);
            this.Buffs.Add(content);
            ask.askData = new MutliLevelData();
            ask.askData.AddSub("1", "确定", null);
            MutliLevelData noselect = ask.askData.AddSub("0", "否", new MutliLevelData());

            noselect.AddSub("0", "停止查询商品", null);
            noselect.AddSub("1", "重新提交其他条件", null);
            ask.askMsg = string.Format(@"确定查找{0}的券?", lotteryName, ask.AskText);
            wxprocess.InjectAsk(ask);
            answerMsg(ask.askMsg);
            return(false);


            optPlan = null;
            return(false);
            //return base.Response();
        }
Пример #12
0
        public override bool Response(ref ShareLotteryPlanClass optPlan)
        {
            Regex           regTr     = new Regex(@"\d+");
            MatchCollection mcs       = regTr.Matches(pureMsg);
            int             chargeAmt = 0;

            if (mcs.Count > 0)
            {
                int.TryParse(mcs[0].Value.Trim(), out chargeAmt);
            }
            TheAskWaitingUserAnswer ask = new TheAskWaitingUserAnswer(this);

            if (chargeAmt <= 0 || (chargeAmt % 100) == 0 || chargeAmt > 4500 || chargeAmt < 151)
            {
                string retMsg = "充值金额非法!请输入正确的充值金额数量,金额介于151~4500之间,不能为100的整数倍!";
                answerMsg(retMsg);
                return(false);
            }
            else
            {
                this.Buffs.Clear();
                this.Buffs.Add(chargeAmt);
                ask.askData = new MutliLevelData();
                ask.askData.AddSub("1", "确定", null);
                MutliLevelData noselect = ask.askData.AddSub("0", "否", new MutliLevelData());
                noselect.AddSub("0", "停止充值", null);
                noselect.AddSub("1", "重新申请其他金额", null);
                ask.askMsg = string.Format(@"确定刷卡{0}元?
{1}", chargeAmt, ask.AskText);
                wxprocess.InjectAsk(ask);
                answerMsg(ask.askMsg);
                return(false);
            }
            optPlan = null;
            return(false);
            //return base.Response();
        }
Пример #13
0
 public virtual bool Response(ref ShareLotteryPlanClass optPlan)
 {
     optPlan = null;
     answerMsg();
     return(true);
 }
Пример #14
0
 public override bool Response(ref ShareLotteryPlanClass optPlan)
 {
     optPlan = null;
     return(base.Response(ref optPlan));
 }
Пример #15
0
        public override bool ResponseAsk(TheAskWaitingUserAnswer ask)
        {
            //wxprocess.CopyToHistoryAsks(ask);
            // wxprocess.CloseCurrAsk(ask);
            if (ask.AnswerResult.key == "0")//结束流程
            {
                answerMsg("欢迎下次使用!");
                return(false);
            }
            else
            {
                ShareLotteryPlanClass plan = null;
                if (ask.UserResponseAnswer.Count == 1) //确定上次的金额
                {
                    if (Buffs.Count != 1)
                    {
                        answerMsg("上次存储的金额信息丢失!请重新申请");
                        return(false);
                    }
                    string signatrue = "";
                    //if (signatrue.ToString().ToUpper().Equals(sha1result))
                    //{

                    //}
                    try
                    {
                        answerMsg("生成和获取二维码需要一定时间,请您耐心等候!");
                        string      url = string.Format("http://www.wolfinv.com/pk10/app/charge.asp?chargeAmt={0}&rnd={1}&wxId={2}&wxName={3}&provide={4}", ask.LastRequestWaitResponse.Buffs[0], new Random().Next(), wxmsg.FromMemberUserName, wxmsg.FromMemberNikeName, wxprocess.RobotNikeName);
                        WebClientTo wc  = new WebClientTo(3 * 60 * 1000);
                        wc.Encoding = System.Text.Encoding.UTF8;
                        string res = wc.DownloadString(url);

                        JavaScriptClass jsc = new JavaScriptClass();
                        ChargeResult    cr  = new ChargeResult();

                        cr = cr.GetFromJson <ChargeResult>(res);

                        if (cr == null)
                        {
                            answerMsg("服务器异常!" + url);
                            return(false);
                        }
                        if (!string.IsNullOrEmpty(cr.imgData) && cr.imgData.Trim() != "空")
                        {
                            answerMsg(string.Format(@"订单号:{0};订单金额:{1}元 ;
请在三分钟内在云闪付内完成支付!", cr.orderNum, cr.chargeAmt));
                            answerMsg(cr.imgData, null, null, true);
                            //string insql = "insert into userchargetable(
                            //chargeid,wxid,wxname,chargeamt,ordernum,imgurl,ChargeAccount) values('{0}','{1}','{2}','{3}','{4}','{5}','{6}')";

                            /*if (db != null)
                             * {
                             *  int cnt = db.ExecSql(new ConditionSql(string.Format(insql,
                             *      cr.reqId,
                             *      ask.LastRequestWaitResponse.roomName,
                             *      ask.LastRequestWaitResponse.requestNike,
                             *      cr.chargeAmt,
                             *      cr.orderNum,
                             *      cr.imgData,
                             *      cr.chargeAccount)));
                             * }*/
                            Task.Run(() => {
                                submitData(cr);
                            });
                        }
                        else
                        {
                            answerMsg(cr.msg);
                            return(false);
                        }

                        //answerMsg(cr.imgData);
                        return(false);
                    }
                    catch (Exception ce)
                    {
                        answerMsg(string.Format("{0}:{1}", ce.Message, ce.StackTrace));
                        //throw ce;
                        return(false);
                    }
                }
                else
                {
                    answerMsg("请重新提交金额!");
                    return(false);
                }

                return(false);
            }
            return(false);
        }
Пример #16
0
        public override bool Response(ref ShareLotteryPlanClass optPlan)
        {
            optPlan = null;
            lastAsk = wxprocess.getLastAsk(roomId, requestUser);
            if (lastAsk == null)
            {
                return(base.Response(ref optPlan));//当作不知道
            }
            if (answers.Count == 0)
            {
                answerMsg("请按提示回答上一个问题!");
                return(false);
            }
            MutliLevelData mld = lastAsk.askData;

            if (!mld.SubList.Keys.Select(a => a.key).ToList().Contains(answers[0]))
            {
                if (mld != null && mld.Parent.SubList.Keys.Select(a => a.key).ToList().Contains(answers[0]))//返回上级
                {
                    MutliLevelData parent = mld.Parent?.Parent;
                    mld = mld.Parent;
                    if (mld.Parent != null)
                    {
                        mld.Parent = parent;
                    }
                }
                else
                {
                    string msg = @"你回复的数字未在我期望范围内:请继续回复上一个问题!";
                    answerMsg(msg);
                    answerMsg(lastAsk.askMsg);//重复上一个问题
                    return(false);
                }
            }
            KeyText result = mld.SubList.Where(a => a.Key.key == answers[0]).First().Key;

            lastAsk.AnswerResult = result;
            if (lastAsk.UserResponseAnswer == null)
            {
                lastAsk.UserResponseAnswer = new List <string>();
            }
            lastAsk.UserResponseAnswer.Add(answers[0]);
            if (mld.SubList[result] != null && mld.SubList[result].SubList.Count > 0)//如果还有下级问题,继续问
            {
                lastAsk.askData        = mld.SubList[result];
                lastAsk.askData.Parent = mld;
                lastAsk.askMsg         = lastAsk.AskText;
                lastAsk.LastRequestWaitResponse.lastAsk = lastAsk;
                wxprocess.setLastAsk(lastAsk);
                answerMsg(lastAsk.askMsg);
                return(false);
            }


            wxprocess.CopyToHistoryAsks(lastAsk);                             //保存至历史
            wxprocess.CloseCurrAsk(lastAsk);                                  //关闭当前等待的
            lastAsk.LastRequestWaitResponse.currPlan = currPlan;
            bool succ = lastAsk.LastRequestWaitResponse.ResponseAsk(lastAsk); //转入最后处理

            if (succ)
            {
                optPlan = lastAsk.LastRequestWaitResponse.currPlan;
            }
            return(succ);
        }
Пример #17
0
        public override bool Response(ref ShareLotteryPlanClass optPlan)
        {
            if (wxprocess.AllPlan != null)
            {
                var runningPlans = wxprocess.AllPlan.Where(a => {
                    if (
                        a.Value.sharePlanStatus != SharePlanStatus.Completed && a.Value.wxRootNo == roomId)
                    {
                        return(true);
                    }
                    return(false);
                });
                if (runningPlans.Count() > 0)
                {
                    answerMsg("非法请求!一个群只能有一个合买在运行,请结束上一个合买再新建新的合买!");
                    return(false);
                }
            }
            KeyText hasLottery        = getLottery();
            ShareLotteryPlanClass slp = new ShareLotteryPlanClass();

            if (hasLottery == null)//未找到彩种,先确认彩种
            {
                TheAskWaitingUserAnswer ask = new TheAskWaitingUserAnswer(this);
                this.lastAsk = ask;
                ask.LastRequestWaitResponse = this;
                string sendmsg = @"您是我们的新用户,请根据我提供的问题选择您需要合买的彩种:" +
                                 "{0}";

                ask.askData = ShareLotteryPlanClass.AllLottery;


                string fullmsg = string.Format(sendmsg, ask.AskText);
                ask.askMsg = fullmsg;
                wxprocess.InjectAsk(ask);
                this.answerMsg(fullmsg);
                return(true);
            }
            else
            {
                Regex           regTr = new Regex(string.Format("{0}(.*?)期", hasLottery.text));
                MatchCollection mcs   = regTr.Matches(pureMsg);
                if (mcs.Count > 0)
                {
                    slp.betExpectNo = mcs[0].Value.Trim().Replace("第", "").Replace(hasLottery.text, "").Replace("期", "");
                }
                slp.betLottery      = hasLottery.key;
                slp.wxRootNo        = roomId;
                slp.wxRootName      = roomName;
                slp.createTime      = DateTime.Now;
                slp.creator         = requestUser;
                slp.creatorNike     = requestNike;
                slp.sharePlanStatus = SharePlanStatus.Ready;
                this.answerMsg(slp.ToUserCreateModel());
                wxprocess.AllPlan.Add(slp.guid, slp);
                optPlan = slp;
            }


            return(true);
            //return base.Response();
        }
Пример #18
0
        public static ResponseActionClass CreateAction(ActionType act, WXMsgProcess wxprs, wxMessageClass msg)
        {
            ResponseActionClass ret = null;

            switch (act)
            {
            case ActionType.ResetSystem:
            {
                ShareLotteryPlanClass.Reset();
                WXMsgProcess.ActionDic = null;
                break;
            }

            case ActionType.ApplyCreate:
            {
                ret = new ResponseAction_ApplyCreate(wxprs, msg);
                break;
            }

            case ActionType.SubmitNewInfo:
            {
                ret = new ResponseAction_SubmitNewInfo(wxprs, msg);
                break;
            }

            case ActionType.CancelCurr:
            {
                ret = new ResponseAction_CancelCurr(wxprs, msg);
                break;
            }

            case ActionType.SubcribeShares:
            {
                ret = new ResponseAction_SubcribeShares(wxprs, msg);
                break;
            }

            case ActionType.ModifyPlan:
            {
                ret = new ResponseAction_ModifyStatus(wxprs, msg, SharePlanStatus.Ready);
                break;
            }

            case ActionType.AppendShares:
            {
                ret = new ResponseAction_ModifyStatus(wxprs, msg, SharePlanStatus.Paied);
                break;
            }

            case ActionType.JdUnion:
            {
                ret = new ResponseAction_JdUnion(wxprs, msg);
                break;
            }

            case ActionType.ShowPlan:
            {
                ret = new ResponseAction_ShowPlan(wxprs, msg);
                break;
            }

            case ActionType.EndTheSubscribe:
            {
                ret = new ResponseAction_ModifyStatus(wxprs, msg, SharePlanStatus.Paying);
                break;
            }

            case ActionType.DeclareResult:
            {
                ret = new ResponseAction_ModifyStatus(wxprs, msg, SharePlanStatus.Opened);
                break;
            }

            case ActionType.DeclareProfit:
            {
                ret = new ResponseAction_ModifyStatus(wxprs, msg, SharePlanStatus.Opened);
                break;
            }

            case ActionType.ClosePlan:
            {
                ret = new ResponseAction_ClosePlan(wxprs, msg);
                break;
            }

            case ActionType.Charge:
            {
                ret = new ResponseAction_Charge(wxprs, msg);
                break;
            }

            case ActionType.ValidateInfo:
            {
                ret = new ResponseAction_ValidateInfo(wxprs, msg);
                break;
            }

            case ActionType.ManualInstructs:
            {
                ret = new ResponseAction_ManualIntructs(wxprs, msg);
                break;
            }

            case ActionType.Undefined:
            default:
            {
                ret = new ResponseAction_Undefined(wxprs, msg);
                break;
            }
            }
            return(ret);
        }
Пример #19
0
 public override bool Response(ref ShareLotteryPlanClass optPlan)
 {
     answerMsg(null, requestUser, requestNike, false);
     return(false);
 }