Esempio n. 1
0
    void queryWalletAmount()
    {
        JToken result = new JObject();

        Model.Member.Define memberDefine = new Model.Member.Define();

        int memberId;

        int agentId;

        string agentId_s = (req["agentId"] ?? "").ToString();

        var chkAgentIdFmt = int.TryParse(agentId_s, out agentId);

        if (chkAgentIdFmt == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "代理帳號格式錯誤";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var chkAgentIdExit = memberDefine.CheckMemberIdExist(agentId);

        if (chkAgentIdExit == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "代理帳號不存在";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        string externalId_s = (req["externalId"] ?? "").ToString();

        var checkExternalIdExit = memberDefine.CheckMemberExternalIdExist(externalId_s, agentId);

        if (checkExternalIdExit == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "externalId不存在";
            result["errorCode"] = ApiErrorCodes.NotFindUsername;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        memberId = memberDefine.GetMemberId(externalId_s, agentId);

        decimal walletAmount = memberDefine.GetMemberWalletAmount(memberId);

        result["result"]       = "success";
        result["msg"]          = "查詢完成";
        result["walletAmount"] = walletAmount;
        result["errorcode"]    = 0;

        Response.Write(JsonConvert.SerializeObject(result));
    }
Esempio n. 2
0
    void AddAgent()
    {
        JToken result = new JObject();

        if (glbf.GetLoginStatus() != 1)
        {
            result["result"] = "fail";
            result["msg"]    = "未完成登入程序";
            result["column"] = "session";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        if ((int)Session["levelId"] < 8)
        {
            result["result"] = "fail";
            result["msg"]    = "無新增代理權限";
            result["column"] = "authorization";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        Model.Member.Define memberDefine = new Model.Member.Define();

        int    agentId = (int)Session["id"];
        string username;
        string password;
        string title;
        string nickname;

        string username_s = (req["username"] ?? "").ToString();

        var chkUsernameFmt = memberDefine.UsernameValidate(username_s);

        if (chkUsernameFmt == 1)
        {
            result["result"] = "fail";
            result["msg"]    = "username長度必須為4~10";
            result["column"] = "username";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }
        else if (chkUsernameFmt == 2)
        {
            result["result"] = "fail";
            result["msg"]    = "username字元須為英數";
            result["column"] = "username";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var chkUsernameExist = memberDefine.CheckMemberUsernameExist(username_s);

        if (chkUsernameExist == true)
        {
            result["result"] = "fail";
            result["msg"]    = "帳號重複";
            result["column"] = "username";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        username = username_s;

        string password_s = (req["password"] ?? "").ToString();

        var chkpassword = memberDefine.PasswordValidate(password_s);

        if (chkpassword == 1)
        {
            result["result"] = "fail";
            result["msg"]    = "password長度必須為4~10";
            result["column"] = "password";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }
        else if (chkpassword == 2)
        {
            result["result"] = "fail";
            result["msg"]    = "password字元須為英數";
            result["column"] = "password";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        password = password_s;

        string title_s = (req["title"] ?? "").ToString();

        var chkTitleFmt = memberDefine.TitleValidate(title_s);

        if (chkTitleFmt == 1)
        {
            result["result"] = "fail";
            result["msg"]    = "title長度必須為1~15";
            result["column"] = "title";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }
        else if (chkTitleFmt == 2)
        {
            result["result"] = "fail";
            result["msg"]    = "title字元須為中文英數";
            result["column"] = "title";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        title = title_s;

        string nickname_s = (req["nickname"] ?? "").ToString();

        var chkNicknameFmt = memberDefine.TitleValidate(nickname_s);

        if (chkNicknameFmt == 1)
        {
            result["result"] = "fail";
            result["msg"]    = "nickname長度必須為1~15";
            result["column"] = "title";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }
        else if (chkNicknameFmt == 2)
        {
            result["result"] = "fail";
            result["msg"]    = "nickname字元須為中文英數";
            result["column"] = "title";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        nickname = nickname_s;

        Model.Member.Add             add = new Model.Member.Add();
        Model.Member.Add.AgentStruct s   = new Model.Member.Add.AgentStruct();

        s.Username = username;
        s.Password = password;
        s.ParentId = agentId;
        s.Title    = title;
        s.Nickname = nickname;

        add.AgentStructHandle(s);

        result["result"] = "success";
        result["msg"]    = "新增完成";
        result["column"] = "";

        Response.Write(JsonConvert.SerializeObject(result));
    }
Esempio n. 3
0
    void AgentList()
    {
        JToken result = new JObject();

        if (glbf.GetLoginStatus() != 1)
        {
            result["result"] = "fail";
            result["msg"]    = "未完成登入程序";
            result["column"] = "session";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        Model.Member.Define memberDefine = new Model.Member.Define();
        Model.Member.View   memberView   = new Model.Member.View();

        int?     l8                  = null;
        int?     l7                  = null;
        int?     levelId             = null;
        string   status              = null;
        DateTime?createBeginDateTime = null;
        DateTime?createEndDateTime   = null;

        string l8_s = (req["l8"] ?? "").ToString();

        if (l8_s != "")
        {
            int l8Temp;
            var chkL8fmt = int.TryParse(l8_s, out l8Temp);
            if (chkL8fmt == false)
            {
                result["result"]    = "fail";
                result["msg"]       = "L8格式錯誤";
                result["errorCode"] = ApiErrorCodes.UsernameFormatError;
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            l8 = l8Temp;
        }

        string l7_s = (req["l7"] ?? "").ToString();

        if (l7_s != "")
        {
            int l7Temp;
            var chkL7fmt = int.TryParse(l7_s, out l7Temp);
            if (chkL7fmt == false)
            {
                result["result"]    = "fail";
                result["msg"]       = "L7格式錯誤";
                result["errorCode"] = ApiErrorCodes.UsernameFormatError;
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            l7 = l7Temp;
        }

        string levelId_s = (req["levelId"] ?? "").ToString();

        if (levelId_s != "")
        {
            int levelIdTemp;
            var checkLevelIdFmt = int.TryParse(levelId_s, out levelIdTemp);
            if (checkLevelIdFmt == false)
            {
                result["result"] = "fail";
                result["msg"]    = "levelId格式錯誤";
                result["column"] = "levelId";
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }

            var checkLevelIdExit = Model.Member.Define.MemberLevelsLangMap.ContainsKey(levelIdTemp);
            if (checkLevelIdExit == false)
            {
                result["result"] = "fail";
                result["msg"]    = "levelId不存在";
                result["column"] = "levelId";
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }

            levelId = levelIdTemp;
        }

        string status_s = (req["status"] ?? "").ToString();

        if (status_s != "")
        {
            var chkStatusExist = Model.Member.Define.MemberStautsLangMap.ContainsKey(status_s);
            if (chkStatusExist == false)
            {
                result["result"] = "fail";
                result["msg"]    = "status不存在";
                result["column"] = "status";
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }

            status = status_s;
        }

        string createBeginDateTime_s = (req["createBeginDateTime"] ?? "").ToString(); //時間
        string createEndDateTime_s   = (req["createEndDateTime"] ?? "").ToString();

        if (createBeginDateTime_s != "" && createEndDateTime_s != "")
        {
            DateTime createBeginDateTimeTemp;
            var      s = DateTime.TryParse(createBeginDateTime_s, out createBeginDateTimeTemp);
            if (s == false)
            {
                result["result"] = "fail";
                result["msg"]    = "日期格式錯誤";
                result["column"] = "createBeginDateTime";
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }

            createBeginDateTime = createBeginDateTimeTemp;

            DateTime createEndDateTimeTemp;
            var      e = DateTime.TryParse(createEndDateTime_s, out createEndDateTimeTemp);
            if (e == false)
            {
                result["result"] = "fail";
                result["msg"]    = "日期格式錯誤";
                result["column"] = "createEndDateTime";
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }

            createEndDateTime = createEndDateTimeTemp;
        }

        Model.Member.List list = new Model.Member.List();
        Model.Member.List.AgentListStruct br = new Model.Member.List.AgentListStruct();

        br.L8                  = l8;
        br.L7                  = l7;
        br.status              = status;
        br.LevelId             = levelId;
        br.CreateBeginDateTime = createBeginDateTime;
        br.CreateEndDateTime   = createEndDateTime;

        var agentListResult = list.AgentListStructHandle(br);

        result["result"] = 0;
        result["column"] = 0;
        result["list"]   = agentListResult;

        Response.Write(JsonConvert.SerializeObject(result));
    }
Esempio n. 4
0
    void DeleteAgent()
    {
        JToken result = new JObject();

        if (glbf.GetLoginStatus() != 1)
        {
            result["result"] = "fail";
            result["msg"]    = "未完成登入程序";
            result["column"] = "session";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        Model.Member.Define memberDefine = new Model.Member.Define();

        int targetAgentId;

        int agentId      = (int)Session["id"];
        int agentLevelId = (int)Session["levelId"];
        int targetAgentLevelId;

        string targetAgentId_s = (req["agentId"] ?? "").ToString();

        var chkAgentIdFmt = int.TryParse(targetAgentId_s, out targetAgentId);

        if (chkAgentIdFmt == false)
        {
            result["result"] = "fail";
            result["msg"]    = "代理帳號格式錯誤";
            result["column"] = "agentId";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var chkAgentIdExit = memberDefine.CheckMemberIdExist(targetAgentId);

        if (chkAgentIdExit == false)
        {
            result["result"] = "fail";
            result["msg"]    = "代理帳號不存在";
            result["column"] = "agentId";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        targetAgentLevelId = memberDefine.GetMemberLevelId(targetAgentId);

        int?targetAgentLN = memberDefine.GetMemberLN(targetAgentId, agentLevelId);

        if (agentId != targetAgentLN || agentId == targetAgentId)
        {
            result["result"] = "fail";
            result["msg"]    = "權限不足";
            result["column"] = "levelId";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        Model.Member.Edit             memberEdit = new Model.Member.Edit();
        Model.Member.Edit.AgentStruct bs         = new Model.Member.Edit.AgentStruct();

        bs.AgentId      = targetAgentId;
        bs.Stauts       = Model.Member.Define.MemberStauts.Disable;
        bs.UpdateUserId = agentId;

        memberEdit.AgentStructHandle(bs);

        result["result"] = "success";
        result["msg"]    = "鎖定帳戶成功";

        Response.Write(JsonConvert.SerializeObject(result));
    }
Esempio n. 5
0
        public void AgentStructHandle(AgentStruct AgentStruct)
        {
            string select_str = "select levelId, l9, l8, l7,companyId , betSetting from [lottery].[dbo].[member] with(nolock) ";
            string where_str  = " Where id = @id ";
            var    e          = conn.Query <member>(select_str + where_str,
                                                    new { Id = AgentStruct.ParentId }).FirstOrDefault();

            select_str = "select betRate, defaultBetSetting from [lottery].[dbo].[company] with(nolock) ";
            where_str  = " Where principalId = @principalId ";
            var h = conn.Query <company>(select_str + where_str,
                                         new { principalId = AgentStruct.ParentId }).FirstOrDefault();

            Define memberDefine = new Define();

            member m = new member()
            {
                username       = AgentStruct.Username,
                password       = AgentStruct.Password,
                levelId        = memberDefine.GetNextLevelId(e.levelId),
                companyId      = 0,
                parentId       = AgentStruct.ParentId,
                externalId     = "",
                createDateTime = DateTime.Now,
                l9             = e.l9,
                l8             = e.l8,
                l7             = e.l7,
                betSetting     = e.betSetting,
                status         = Define.MemberStauts.Enable,
                nickname       = AgentStruct.Nickname
            };

            dcdc.members.InsertOnSubmit(m);
            dcdc.SubmitChanges();

            int principalId = m.id;

            company c = new company()
            {
                title             = AgentStruct.Title,
                createDateTime    = DateTime.Now,
                principalId       = principalId,
                betRate           = h.betRate,
                defaultBetSetting = h.defaultBetSetting
            };

            dcdc.companies.InsertOnSubmit(c);
            dcdc.SubmitChanges();

            int companyId = c.Id;

            if (AgentStruct.LevelId == Define.MemberLevels.UpAgent)
            {
                m.l8 = principalId;
            }
            if (AgentStruct.LevelId == Define.MemberLevels.Agent)
            {
                m.l7 = principalId;
            }

            m.companyId = companyId;

            dcdc.SubmitChanges();
        }
Esempio n. 6
0
    void GetDefaultBetSetting()
    {
        JToken result = new JObject();

        if (glbf.GetLoginStatus() != 1)
        {
            result["result"] = "fail";
            result["msg"]    = "未完成登入程序";
            result["column"] = "session";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        Model.Member.Define  memberDefine  = new Model.Member.Define();
        Model.Company.Define companyDefine = new Model.Company.Define();

        int    agentId      = (int)Session["id"];
        int    agentLevelId = (int)Session["levelId"];
        int    targetAgentId;
        int    targetAgentLevelId;
        JToken defaultBetSetting;

        string targetAgentId_s = (Request["agentId"] ?? "").ToString();

        var chkAgentIdFmt = int.TryParse(targetAgentId_s, out targetAgentId);

        if (chkAgentIdFmt == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "代理帳號格式錯誤";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var chkAgentIdExit = memberDefine.CheckMemberIdExist(targetAgentId);

        if (chkAgentIdExit == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "代理帳號不存在";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        targetAgentLevelId = memberDefine.GetMemberLevelId(targetAgentId);
        defaultBetSetting  = JsonConvert.DeserializeObject <JObject>(companyDefine.GetCompanyDefaultBetSetting(targetAgentId));

        int?targetAgentLN = memberDefine.GetMemberLN(targetAgentId, agentLevelId);

        if (agentId != targetAgentLN)
        {
            result["result"] = "fail";
            result["msg"]    = "權限不足";
            result["column"] = "levelId";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        result["result"]  = "success";
        result["msg"]     = "取得成功";
        result["column"]  = "";
        result["betRate"] = defaultBetSetting;

        Response.Write(JsonConvert.SerializeObject(result));
    }
Esempio n. 7
0
    void Login()
    {
        JToken result = new JObject();

        Model.Member.Define memberDefine = new Model.Member.Define();

        string clientIP = glbf.GetClientIP();
        int    agentId;

        int    agentLevelId;
        string agentStatus;

        string username = (req["username"] ?? "").ToString();

        var chkUsernameExit = memberDefine.CheckMemberUsernameExist(username);

        if (chkUsernameExit == false)
        {
            result["result"] = "fail";
            result["msg"]    = "無此帳號";
            result["column"] = "username";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        agentId      = memberDefine.GetMemberId(username);
        agentLevelId = memberDefine.GetMemberLevelId(agentId);
        agentStatus  = memberDefine.GetMemberStatus(agentId);

        if (agentLevelId < 7)
        {
            result["result"] = "fail";
            result["msg"]    = "非代理帳號";
            result["column"] = "agentId";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        if (agentStatus == Model.Member.Define.MemberStauts.Disable)
        {
            result["result"] = "fail";
            result["msg"]    = "帳號鎖定";
            result["column"] = "status";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }
        else if (agentStatus == Model.Member.Define.MemberStauts.NeedToChangePassword)
        {
            result["result"] = "fail";
            result["msg"]    = "請修改密碼後再次登入";
            result["column"] = "status";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        string password = (req["password"] ?? "").ToString();

        if (password != memberDefine.GetMemberPassword(agentId))
        {
            result["result"] = "fail";
            result["msg"]    = "密碼錯誤";
            result["column"] = "password";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        Model.Member.Edit e = new Model.Member.Edit();
        Model.Member.Edit.AgentLoginStruct s = new Model.Member.Edit.AgentLoginStruct();

        s.AgentId = agentId;
        s.LoginIP = clientIP;

        e.AgentLoginStructHandle(s);

        result["result"] = "success";
        result["msg"]    = "登入成功";
        result["id"]     = agentId.ToString();

        Response.Write(JsonConvert.SerializeObject(result));
    }
Esempio n. 8
0
    void Edit()
    {
        JToken result = new JObject();

        if (glbf.GetLoginStatus() != 1)
        {
            result["result"] = "fail";
            result["msg"]    = "未完成登入程序";
            result["column"] = "session";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        Model.Member.Define memberDefine = new Model.Member.Define();

        int    targetAgentId;
        string password          = null;
        string title             = null;
        string nickname          = null;
        string targetAgentStatus = null;

        int targetAgentLevelId;
        int agentId      = (int)Session["id"];;
        int agentLevelId = (int)Session["levelId"];

        string targetAgentId_s = (req["agentId"] ?? "").ToString();

        var chkAgentIdFmt = int.TryParse(targetAgentId_s, out targetAgentId);

        if (chkAgentIdFmt == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "代理帳號格式錯誤";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var chkAgentIdExit = memberDefine.CheckMemberIdExist(targetAgentId);

        if (chkAgentIdExit == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "代理帳號不存在";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        targetAgentLevelId = memberDefine.GetMemberLevelId(targetAgentId);

        if (targetAgentLevelId < 7)
        {
            result["result"] = "fail";
            result["msg"]    = "修改對象非代理帳號";
            result["column"] = "AgentId";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        string password_s = (req["password"] ?? "").ToString();

        if (password_s != "")
        {
            var chkpassword = memberDefine.PasswordValidate(password_s);
            if (chkpassword == 1)
            {
                result["result"] = "fail";
                result["msg"]    = "password長度必須為4~10";
                result["column"] = "password";
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            else if (chkpassword == 2)
            {
                result["result"] = "fail";
                result["msg"]    = "password字元須為英數";
                result["column"] = "password";
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }

            targetAgentStatus = Model.Member.Define.MemberStauts.NeedToChangePassword;

            password = password_s;
        }

        string title_s = (req["title"] ?? "").ToString();

        if (title_s != "")
        {
            var chktitle = memberDefine.TitleValidate(title_s);
            if (chktitle == 1)
            {
                result["result"] = "fail";
                result["msg"]    = "title長度必須為1~15";
                result["column"] = "title";
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            else if (chktitle == 2)
            {
                result["result"] = "fail";
                result["msg"]    = "title字元須為英數";
                result["column"] = "title";
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }

            title = title_s;
        }

        string nickname_s = (req["nickname"] ?? "").ToString();

        if (nickname_s != "")
        {
            var chkNicknameFmt = memberDefine.TitleValidate(nickname_s);
            if (chkNicknameFmt == 1)
            {
                result["result"] = "fail";
                result["msg"]    = "nickname長度必須為1~15";
                result["column"] = "nickname";
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            else if (chkNicknameFmt == 2)
            {
                result["result"] = "fail";
                result["msg"]    = "nickname字元須為英數";
                result["column"] = "nickname";
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }

            nickname = nickname_s;
        }

        int?targetAgentLN = memberDefine.GetMemberLN(targetAgentId, agentLevelId);

        if (agentId != targetAgentLN || agentId == targetAgentId)
        {
            result["result"] = "fail";
            result["msg"]    = "無修改權限";
            result["column"] = "levelId";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        Model.Member.Edit.AgentStruct s      = new Model.Member.Edit.AgentStruct();
        Model.Member.Edit             update = new Model.Member.Edit();

        s.AgentId      = targetAgentId;
        s.Password     = password;
        s.Title        = title;
        s.Nickname     = nickname;
        s.UpdateUserId = agentId;
        s.Stauts       = targetAgentStatus;

        update.AgentStructHandle(s);

        result["result"] = "success";
        result["msg"]    = "更新成功";
        result["column"] = "";

        Response.Write(JsonConvert.SerializeObject(result));
    }
Esempio n. 9
0
    void createMember()
    {
        JToken result = new JObject();

        Model.Member.Define memberDefine = new Model.Member.Define();

        int    agentId;
        string externalId;

        int agentLevelId;

        string agentId_s = (req["agentId"] ?? "").ToString();

        var chkAgentIdFmt = int.TryParse(agentId_s, out agentId);

        if (chkAgentIdFmt == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "代理帳號格式錯誤";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var chkAgentIdExit = memberDefine.CheckMemberIdExist(agentId);

        if (chkAgentIdExit == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "代理帳號不存在";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        agentLevelId = memberDefine.GetMemberLevelId(agentId);

        if (agentLevelId != 7)
        {
            result["result"]    = "fail";
            result["msg"]       = "levelId 錯誤";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        string externalId_s = (req["externalId"] ?? "").ToString();

        var chkExternalIdFmt = memberDefine.UsernameValidate(externalId_s);

        if (chkExternalIdFmt == 1)
        {
            result["result"] = "fail";
            result["msg"]    = "externalId長度必須為4~10";
            result["column"] = "externalId";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }
        else if (chkExternalIdFmt == 2)
        {
            result["result"] = "fail";
            result["msg"]    = "externalId字元須為英數";
            result["column"] = "externalId";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var checkExternalIdExist = memberDefine.CheckMemberExternalIdExist(externalId_s, agentId);

        if (checkExternalIdExist == true)
        {
            result["result"]    = "fail";
            result["msg"]       = "externalId重複";
            result["errorcode"] = ApiErrorCodes.UsernameExist;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        externalId = externalId_s;

        Model.Member.Add add            = new Model.Member.Add();
        Model.Member.Add.MemberStruct s = new Model.Member.Add.MemberStruct();
        s.ExternalId = externalId;
        s.AgentId    = agentId;

        add.MemberStructHandle(s);

        result["result"]    = "success";
        result["msg"]       = "新增完成";
        result["errorcode"] = 0;

        Response.Write(JsonConvert.SerializeObject(result));
    }
Esempio n. 10
0
    void EditDefaultBetSetting()
    {
        JToken result = new JObject();


        if (glbf.GetLoginStatus() != 1)
        {
            result["result"] = "fail";
            result["msg"]    = "未完成登入程序";
            result["column"] = "session";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        Model.Member.Define memberDefine = new Model.Member.Define();

        int     agentId = (int)Session["id"];
        int     targetAgentId;
        JObject defaultBetSettingObj;

        int agentLevelId = (int)Session["levelId"];
        int targetAgentLevelId;

        string defaultBetSetting   = (req["defaultBetSetting"] ?? "").ToString();
        string targetAgentUsername = (req["agentUsername"] ?? "").ToString();

        string targetAgentId_s = (req["agentId"] ?? "").ToString();

        var chkAgentIdFmt = int.TryParse(targetAgentId_s, out targetAgentId);

        if (chkAgentIdFmt == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "代理帳號格式錯誤";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var chkAgentIdExit = memberDefine.CheckMemberIdExist(targetAgentId);

        if (chkAgentIdExit == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "代理帳號不存在";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        targetAgentLevelId = memberDefine.GetMemberLevelId(targetAgentId);

        try
        {
            defaultBetSettingObj = JsonConvert.DeserializeObject <JObject>(defaultBetSetting);
        }
        catch (Exception excep)
        {
            result["result"] = "fail";
            result["msg"]    = "betSetting轉換json失敗";
            result["column"] = "betSetting";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        int?targetAgentLN = memberDefine.GetMemberLN(targetAgentId, agentLevelId);

        if (agentId != targetAgentLN)
        {
            result["result"] = "fail";
            result["msg"]    = "權限不足";
            result["column"] = "levelId";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        Model.Member.Edit             edit = new Model.Member.Edit();
        Model.Member.Edit.AgentStruct bs   = new Model.Member.Edit.AgentStruct();

        bs.AgentId           = targetAgentId;
        bs.DefaultBetSetting = defaultBetSettingObj;
        bs.UpdateUserId      = agentId;

        edit.AgentStructHandle(bs);

        result["result"] = "success";
        result["msg"]    = "修改預設賽事設定完成";
        result["column"] = "";

        Response.Write(JsonConvert.SerializeObject(result));
    }
Esempio n. 11
0
    void oneTimeLinkLogin()
    {
        JToken result = new JObject();

        Model.Member.Define memberDefine = new Model.Member.Define();

        byte[] decbuff = Convert.FromBase64String(Request["post"]);
        var    o       = System.Text.Encoding.UTF8.GetString(decbuff);
        var    json    = JsonConvert.DeserializeObject <JObject>(o);

        int    memberId;
        string ip = glbf.GetClientIP();

        int    agentId;
        string memberGuid;

        string agentId_s = (json["agentId"] ?? "").ToString();

        var chkAgentIdFmt = int.TryParse(agentId_s, out agentId);

        if (chkAgentIdFmt == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "代理帳號格式錯誤";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var chkAgentIdExit = memberDefine.CheckMemberIdExist(agentId);

        if (chkAgentIdExit == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "代理帳號不存在";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        string externalId_s = (json["externalId"] ?? "").ToString();

        var checkExternalIdExit = memberDefine.CheckMemberExternalIdExist(externalId_s, agentId);

        if (checkExternalIdExit == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "externalId不存在";
            result["errorCode"] = ApiErrorCodes.NotFindUsername;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        memberId   = memberDefine.GetMemberId(externalId_s, agentId);
        memberGuid = memberDefine.GetMemberGuid(memberId);

        string guid_s = (json["guid"] ?? "").ToString();

        if (guid_s != memberGuid)
        {
            result["result"]    = "fail";
            result["msg"]       = "guid錯誤";
            result["errorcode"] = ApiErrorCodes.NotFindUsername;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        Model.Member.Edit memberEdit          = new Model.Member.Edit();
        Model.Member.Edit.MemberLoginStruct s = new Model.Member.Edit.MemberLoginStruct();

        s.MemberId = memberId;
        s.LoginIP  = ip;

        memberEdit.MemberLoginStructHandle(s);


        result["result"] = "success";
        result["msg"]    = "登入成功";

        Response.Redirect("./index");
    }
Esempio n. 12
0
    void depositWalletAmount()
    {
        JToken result = new JObject();

        Model.Member.Define memberDefine = new Model.Member.Define();

        int     memberId;
        decimal memberWalletAmount;

        string  transferType;
        decimal walletDiff;

        int agentId;

        string transferType_s = (req["transferType"] ?? "").ToString();
        string walletAmount_s = (req["walletAmount"] ?? "").ToString();

        string agentId_s = (req["agentId"] ?? "").ToString();

        var chkAgentIdFmt = int.TryParse(agentId_s, out agentId);

        if (chkAgentIdFmt == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "代理帳號格式錯誤";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var chkAgentIdExit = memberDefine.CheckMemberIdExist(agentId);

        if (chkAgentIdExit == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "代理帳號不存在";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        string externalId_s = (req["externalId"] ?? "").ToString();

        var checkExternalIdExit = memberDefine.CheckMemberExternalIdExist(externalId_s, agentId);

        if (checkExternalIdExit == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "externalId不存在";
            result["errorCode"] = ApiErrorCodes.NotFindUsername;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        memberId           = memberDefine.GetMemberId(externalId_s, agentId);
        memberWalletAmount = memberDefine.GetMemberWalletAmount(memberId);

        bool conversionWalletAmount = decimal.TryParse(walletAmount_s, out walletDiff);

        if (conversionWalletAmount == false)
        {
            result["result"] = "fail";
            result["msg"]    = "金額格式錯誤";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        bool checkTransferType = Model.Member.Define.TransactionTypesLangMap.ContainsKey(transferType_s);

        if (checkTransferType == false)
        {
            result["result"] = "fail";
            result["msg"]    = "交易型態錯誤";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }
        transferType = transferType_s;

        if (transferType == Model.Member.Define.TransactionType.Debits)
        {
            if (walletDiff > memberWalletAmount)
            {
                result["result"] = "fail";
                result["msg"]    = "餘額不足";
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }

            memberWalletAmount -= walletDiff;
        }
        else if (transferType == Model.Member.Define.TransactionType.Deposit)
        {
            memberWalletAmount += walletDiff;
        }

        Model.Member.Edit.BalanceTransferStruct m = new Model.Member.Edit.BalanceTransferStruct();
        Model.Member.Edit edit = new Model.Member.Edit();

        m.MemberId     = memberId;
        m.WalletAmount = memberWalletAmount;

        edit.BalanceTransferStructHandle(m);

        result["result"] = "success";
        result["msg"]    = "交易成功,交易金額為:" + walletDiff.ToString() + ",目前餘額為:" + memberWalletAmount.ToString();

        Response.Write(JsonConvert.SerializeObject(result));
    }
Esempio n. 13
0
    void betFormAdd()
    {
        JToken result = new JObject();

        if (glbf.GetLoginStatus() != 2)
        {
            result["result"] = "fail";
            result["msg"]    = "未完成登入程序";
            result["column"] = "session";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        Model.Member.Define  memberDefine  = new Model.Member.Define();
        Model.BetForm.Define betFormDefine = new Model.BetForm.Define();

        int     memberId = (int)Session["id"];
        int     parentId = (int)Session["parentId"];
        string  ip       = glbf.GetClientIP();
        string  periodId = betFormDefine.GetLotteryPeriodId();
        JObject chooseBallObj;
        string  betType;
        string  betBranch;
        string  betRemark = null;
        decimal betAmount;
        int     combo;
        decimal rate;
        decimal totalBet;
        decimal walletAmount = memberDefine.GetMemberWalletAmount(memberId);

        string betType_s = (req["betType"] ?? "").ToString();

        var checkBetTypeExit = Model.BetForm.Define.BetTypesLangMap.ContainsKey(betType_s);

        if (checkBetTypeExit == false)
        {
            result["result"] = "fail";
            result["msg"]    = "找不到此BetType";
            result["column"] = "betType";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        betType = betType_s;

        string betBranch_s = (req["betBranch"] ?? "").ToString();

        int betBranchTemp;

        var chkBetBranchTempFmt = int.TryParse(betBranch_s, out betBranchTemp);

        if (chkBetBranchTempFmt == false)
        {
            result["result"] = "fail";
            result["msg"]    = "betBranch格式錯誤";
            result["column"] = "betBranch";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        betBranch = betBranch_s;

        string betRemark_s = (req["betRemark"] ?? "").ToString();

        if (betRemark_s != "")
        {
            var checkBetRemark = memberDefine.TitleValidate(betRemark_s);
            if (checkBetRemark == 2)
            {
                result["result"] = "fail";
                result["msg"]    = "只能輸入中文或英數";
                result["column"] = "betRemark";
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            else if (checkBetRemark == 1)
            {
                result["result"] = "fail";
                result["msg"]    = "字串長度錯誤";
                result["column"] = "betRemark";
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
        }

        betRemark = betRemark_s;

        string betAmount_s = (req["betAmount"] ?? "").ToString();

        bool chkBetBetAmountFmt = decimal.TryParse(betAmount_s, out betAmount);

        if (chkBetBetAmountFmt == false)
        {
            result["result"] = "fail";
            result["msg"]    = "BetAmount格式錯誤";
            result["column"] = "betAmount";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        decimal singleBetMinValue = memberDefine.GetMemberSingleBetMinValue(memberId, betType);

        if (betAmount < singleBetMinValue)
        {
            result["result"] = "fail";
            result["msg"]    = "小於玩法單注限額";
            result["column"] = "betAmount";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        decimal singleBetMaxValue = memberDefine.GetMemberSingleBetMaxValue(memberId, betType);

        if (betAmount > singleBetMaxValue)
        {
            result["result"] = "fail";
            result["msg"]    = "大於玩法單注限額";
            result["column"] = "betAmount";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        //bool checkBetTime = define.CheckBetTime();
        //if (checkBalance == false)
        //{
        //    result["result"] = "fail";
        //    result["msg"] = "超過時間";
        //    result["errorcode"] = ApiErrorCodes.OverTime;
        //    Response.Write(JsonConvert.SerializeObject(result));
        //    return;
        //}

        string chooseBall_s = (req["chooseBall"] ?? "").ToString().TrimEnd(',').Replace("\r\n", "").Replace(" ", "");

        try
        {
            chooseBallObj = JsonConvert.DeserializeObject <JObject>(chooseBall_s);
        }
        catch (Exception excep)
        {
            result["result"] = "fail";
            result["msg"]    = "chooseBall轉換json失敗";
            result["column"] = "chooseBall";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var checkChooseBallCntCorrect = betFormDefine.CheckChooseBallCntCorrect(chooseBallObj, betType);

        if (checkChooseBallCntCorrect == false)
        {
            result["result"] = "fail";
            result["msg"]    = "chooseBall數量錯誤";
            result["column"] = "chooseBall";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var chkChooseBallItem = betFormDefine.CheckChooseBallItemCorrect(chooseBallObj, betType, parentId);

        if (chkChooseBallItem == false)
        {
            result["result"] = "fail";
            result["msg"]    = "賠率異常或球號異常";
            result["column"] = "chooseBall";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        string rate_s = (req["rate"] ?? "").ToString();

        var chkRateFmt = decimal.TryParse(rate_s, out rate);

        if (chkRateFmt == false)
        {
            result["result"] = "fail";
            result["msg"]    = "rate格式錯誤";
            result["column"] = "rate";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        if (rate != betFormDefine.CalcBetFormRate(chooseBallObj, betType))
        {
            result["result"] = "fail";
            result["msg"]    = "rate錯誤";
            result["column"] = "rate";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        string combo_s = (req["combo"] ?? "").ToString();

        int comboTemp;
        var chkComboFmt = int.TryParse(combo_s, out comboTemp);

        if (chkComboFmt == false)
        {
            result["result"] = "fail";
            result["msg"]    = "combo格式錯誤";
            result["column"] = "combo";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        if (betFormDefine.CalcBetFormCombo(chooseBallObj, betType) != comboTemp)
        {
            result["result"] = "fail";
            result["msg"]    = "combo錯誤";
            result["column"] = "combo";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        combo = comboTemp;

        string totalBet_s = (req["totalBet"] ?? "").ToString();

        var chkTotalBetFmt = decimal.TryParse(totalBet_s, out totalBet);

        if (chkTotalBetFmt == false)
        {
            result["result"] = "fail";
            result["msg"]    = "totalBet格式錯誤";
            result["column"] = "totalBet";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        if (totalBet != betAmount * combo)
        {
            result["result"] = "fail";
            result["msg"]    = "totalBet錯誤";
            result["column"] = "totalBet";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        decimal betMaxValueByBetType = memberDefine.GetMemberBetMaxValueByBetType(memberId, betType);
        decimal agentBetMaxValue     = memberDefine.GetMemberAgentBetMaxValue(memberId, betType);

        decimal totalBetByMember = betFormDefine.GetTotalBetByMember(memberId, periodId, betType);
        decimal totalBetByAgent  = betFormDefine.GetTotalBetByAgent(parentId, periodId);

        if (totalBet + totalBetByMember > betMaxValueByBetType)
        {
            result["result"] = "fail";
            result["msg"]    = "超過單一玩法限制最大總計金額";
            result["column"] = "totalBet";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        if (totalBet + totalBetByAgent > agentBetMaxValue)
        {
            result["result"] = "fail";
            result["msg"]    = "超過代理限制最大總計金額";
            result["column"] = "";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        if (totalBet > walletAmount)
        {
            result["result"] = "fail";
            result["msg"]    = "餘額不足";
            result["column"] = "";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        walletAmount -= totalBet; // 錢包餘額扣掉下注總金額

        bool checkBetFormExist = betFormDefine.CheckBetFormExist(memberId, chooseBallObj, betType);

        if (checkBetFormExist == true)
        {
            result["result"] = "fail";
            result["msg"]    = "重複下注";
            result["column"] = "";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        Model.BetForm.Add betFormAdd      = new Model.BetForm.Add();
        Model.BetForm.Add.BetFormStruct b = new Model.BetForm.Add.BetFormStruct();

        b.memberId   = memberId;
        b.BetType    = betType;
        b.BetBranch  = betBranch; // 暫時未使用
        b.ChooseBall = JsonConvert.SerializeObject(chooseBallObj);
        b.Rate       = rate;
        b.Combo      = combo;
        b.BetAmount  = betAmount;
        b.TotalBet   = totalBet;
        b.IP         = ip;
        b.PeriodId   = periodId;
        b.BetRemark  = betRemark;

        betFormAdd.BetFormStructtHandle(b); // add 注單

        Model.Member.Edit memberEdit = new Model.Member.Edit();
        Model.Member.Edit.BalanceTransferStruct eb = new Model.Member.Edit.BalanceTransferStruct();

        eb.MemberId     = memberId;
        eb.WalletAmount = totalBet;

        memberEdit.BalanceTransferStructHandle(eb); // 修改 walletAmount

        result["result"] = "success";
        result["msg"]    = "第" + periodId + "期下注成功,下注金額為:" + totalBet.ToString() + "賠率為:" + rate.ToString() + " ,剩餘金額:" + walletAmount.ToString();
        result["column"] = "";

        Response.Write(JsonConvert.SerializeObject(result));
    }
Esempio n. 14
0
        /// <summary>
        /// 取得列表
        /// </summary>
        /// <param name="memberid"></param>
        /// <returns>a:username; b:levelId; c:externalId; d:loginDateTime; e:loginIP; f:createDateTime; g:updatedatetime; h:updateUserId</returns>
        public JArray AgentListStructHandle(AgentListStruct br)
        {
            JArray ja = new JArray();

            Define define     = new Define();
            string select_str = "select * from [lottery].[dbo].[member] with(nolock) ";
            string where_str  = "";

            where_str += glbf.GetSQLSameLine();

            if (br.L8 != null)
            {
                if (where_str != "")
                {
                    where_str += " and ";
                }
                where_str += " l8 = " + br.L8.ToString();
            }

            if (br.L7 != null)
            {
                if (where_str != "")
                {
                    where_str += " and ";
                }
                where_str += " l7 = " + br.L7.ToString();
            }

            if (br.LevelId != null)
            {
                if (where_str != "")
                {
                    where_str += " and ";
                }
                where_str += " levelId = " + br.LevelId.ToString();
            }

            if (br.CreateBeginDateTime.HasValue)
            {
                if (where_str != "")
                {
                    where_str += " and ";
                }
                where_str += " createDateTime >= '" + ((DateTime)br.CreateBeginDateTime).ToString("yyyy/MM/dd HH:mm:ss") + "'";
            }

            if (br.CreateEndDateTime.HasValue)
            {
                if (where_str != "")
                {
                    where_str += " and ";
                }
                where_str += " createDateTime <= '" + ((DateTime)br.CreateEndDateTime).ToString("yyyy/MM/dd HH:mm:ss") + "'";
            }

            if (br.status != null)
            {
                if (where_str != "")
                {
                    where_str += " and ";
                }
                where_str += " status = '" + br.status + "'";
            }
            List <member> agentList = new List <member>();

            if (where_str != "")
            {
                agentList.AddRange(conn.Query <member>(select_str + " where " + where_str).ToList());
            }
            else
            {
                agentList.AddRange(conn.Query <member>(select_str).ToList());
            }

            foreach (var m in agentList)
            {
                JToken jt = new JObject();
                jt["a"] = m.username;
                jt["b"] = m.levelId;
                jt["c"] = m.companyId;

                if (m.loginDateTime.HasValue == false)
                {
                    jt["d"] = "";
                }
                else
                {
                    jt["d"] = m.loginDateTime.Value.ToString("yyyy/MM/dd HH:mm:ss");
                }
                if (m.loginIP == null)
                {
                    jt["e"] = "";
                }
                else
                {
                    jt["e"] = m.loginIP;
                }
                jt["f"] = m.createDateTime.Value.ToString("yyyy/MM/dd HH:mm:ss");

                if (m.updateDateTime.HasValue == false)
                {
                    jt["g"] = "";
                }
                else
                {
                    jt["g"] = m.updateDateTime.Value.ToString("yyyy/MM/dd HH:mm:ss");
                }
                if (m.updateUserId.HasValue)
                {
                    jt["h"] = "";
                }
                else
                {
                    jt["h"] = m.updateUserId;
                }
                jt["i"] = m.id;

                jt["j"] = m.l9;
                jt["k"] = m.l8;
                jt["l"] = m.l7;
                jt["m"] = m.l1;
                jt["n"] = m.status;
                jt["o"] = m.nickname;

                ja.Add(jt);
            }
            return(ja);
        }
Esempio n. 15
0
    void ForwardGame()
    {
        JToken result = new JObject();

        Model.Member.Define memberDefine = new Model.Member.Define();

        int    memberId;
        string guid;

        int agentId;

        string agentId_s = (req["agentId"] ?? "").ToString();

        var chkAgentIdFmt = int.TryParse(agentId_s, out agentId);

        if (chkAgentIdFmt == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "代理帳號格式錯誤";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var chkAgentIdExit = memberDefine.CheckMemberIdExist(agentId);

        if (chkAgentIdExit == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "代理帳號不存在";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        string externalId_s = (req["externalId"] ?? "").ToString();

        var checkExternalIdExit = memberDefine.CheckMemberExternalIdExist(externalId_s, agentId);

        if (checkExternalIdExit == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "externalId不存在";
            result["errorCode"] = ApiErrorCodes.NotFindUsername;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        memberId = memberDefine.GetMemberId(externalId_s, agentId);

        guid = Guid.NewGuid().ToString("N");

        Model.Member.Edit edit = new Model.Member.Edit();
        Model.Member.Edit.ForwardGameStruct fg = new Model.Member.Edit.ForwardGameStruct();

        fg.MemberId = memberId;
        fg.Guid     = guid;

        edit.ForwardGameStructHandle(fg);

        JToken jtk = new JObject();

        jtk["agentId"]    = agentId;
        jtk["externalId"] = externalId_s;
        jtk["guid"]       = guid;

        string str = JsonConvert.SerializeObject(jtk);

        byte[] bt = Encoding.UTF8.GetBytes(str);

        string webaddr = Convert.ToBase64String(bt);

        result["result"]     = "success";
        result["errorCode"]  = 0;
        result["agentId"]    = agentId;
        result["externalId"] = externalId_s;
        result["url"]        = "http://192.168.1.131:82/lottery/externalLogin?post=" + webaddr;

        Response.Write(JsonConvert.SerializeObject(result));
    }
Esempio n. 16
0
    void GetMemberReport()
    {
        JToken result = new JObject();

        if (glbf.GetLoginStatus() != 1)
        {
            result["result"] = "fail";
            result["msg"]    = "未完成登入程序";
            result["column"] = "session";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        Model.Member.Define  memberDefine  = new Model.Member.Define();
        Model.BetForm.Define betFormDefine = new Model.BetForm.Define();

        int?     l8        = null;
        int?     l7        = null;
        int?     l1        = null;
        int?     levelId   = null;
        string   periodId  = null;
        string   status    = null;
        string   betType   = null;
        bool?    isDeliver = null;
        string   reportType;
        DateTime beginDateTime;
        DateTime endDateTime;

        string l8_s = (req["l8"] ?? "").ToString();

        if (l8_s != "")
        {
            int l8Temp;
            var chkL8fmt = int.TryParse(l8_s, out l8Temp);
            if (chkL8fmt == false)
            {
                result["result"]    = "fail";
                result["msg"]       = "L8格式錯誤";
                result["errorCode"] = ApiErrorCodes.UsernameFormatError;
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            l8 = l8Temp;
        }

        string l7_s = (req["l7"] ?? "").ToString();

        if (l7_s != "")
        {
            int l7Temp;
            var chkL7fmt = int.TryParse(l7_s, out l7Temp);
            if (chkL7fmt == false)
            {
                result["result"]    = "fail";
                result["msg"]       = "L7格式錯誤";
                result["errorCode"] = ApiErrorCodes.UsernameFormatError;
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            l7 = l7Temp;
        }

        string l1_s = (req["l1"] ?? "").ToString();

        if (l1_s != "")
        {
            int l1Temp;
            var chkL7fmt = int.TryParse(l1_s, out l1Temp);
            if (chkL7fmt == false)
            {
                result["result"]    = "fail";
                result["msg"]       = "L1格式錯誤";
                result["errorCode"] = ApiErrorCodes.UsernameFormatError;
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            l1 = l1Temp;
        }

        string levelId_s = (req["levelId"] ?? "").ToString();

        if (levelId_s != "")
        {
            int levelIdTemp;
            var checkLevelIdFmt = int.TryParse(levelId_s, out levelIdTemp);
            if (checkLevelIdFmt == false)
            {
                result["result"] = "fail";
                result["msg"]    = "levelId格式錯誤";
                result["column"] = "levelId";
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }

            var checkLevelIdExit = Model.Member.Define.MemberLevelsLangMap.ContainsKey(levelIdTemp);
            if (checkLevelIdExit == false)
            {
                result["result"] = "fail";
                result["msg"]    = "levelId不存在";
                result["column"] = "levelId";
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }

            levelId = levelIdTemp;
        }

        string periodId_s = (req["periodId"] ?? "").ToString();

        if (periodId_s != "")
        {
            int periodIdTemp;
            var chkperiodIdfmt = int.TryParse(periodId_s, out periodIdTemp);
            if (chkperiodIdfmt == false)
            {
                result["result"]    = "fail";
                result["msg"]       = "periodId格式錯誤";
                result["errorCode"] = ApiErrorCodes.UsernameFormatError;
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            periodId = periodId_s;
        }

        string betType_s = (req["betType"] ?? "").ToString();//找玩法

        if (betType_s != "")
        {
            var chkBetTypeExist = Model.BetForm.Define.BetTypesLangMap.ContainsKey(betType_s);
            if (chkBetTypeExist == false)
            {
                result["result"]    = "fail";
                result["msg"]       = "betType不存在";
                result["errorCode"] = ApiErrorCodes.UsernameFormatError;
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            betType = betType_s;
        }

        string status_s = (req["status"] ?? "").ToString();//找狀態

        if (status_s != "")
        {
            var chkStatusExist = Model.BetForm.Define.BetFormStatusLangMap.ContainsKey(status_s);
            if (chkStatusExist == false)
            {
                result["result"]    = "fail";
                result["msg"]       = "status不存在";
                result["errorCode"] = ApiErrorCodes.UsernameFormatError;
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            status = status_s;
        }

        string isDeliver_s = (req["isDeliver"] ?? "").ToString();

        if (isDeliver_s != "")
        {
            bool isDeliverTemp;
            var  chkIsDeliverExist = bool.TryParse(isDeliver_s, out isDeliverTemp);
            if (chkIsDeliverExist == false)
            {
                result["result"]    = "fail";
                result["msg"]       = "isDeliver格式錯誤";
                result["errorCode"] = ApiErrorCodes.UsernameFormatError;
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            isDeliver = isDeliverTemp;
        }

        string beginDateTime_s = (req["beginDateTime"] ?? "").ToString();
        string endDateTime_s   = (req["endDateTime"] ?? "").ToString();

        if (beginDateTime_s == "" || endDateTime_s == "")
        {
            result["result"] = "fail";
            result["msg"]    = "日期必須輸入";
            result["column"] = "DateTime";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var s = DateTime.TryParse(beginDateTime_s, out beginDateTime);

        if (s == false)
        {
            result["result"] = "fail";
            result["msg"]    = "起始日期格式錯誤";
            result["column"] = "beginDateTime";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var e = DateTime.TryParse(endDateTime_s, out endDateTime);

        if (e == false)
        {
            result["result"] = "fail";
            result["msg"]    = "結束日期格式錯誤";
            result["column"] = "endDateTime";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        if (endDateTime < beginDateTime)
        {
            result["result"] = "fail";
            result["msg"]    = "日期不能倒置";
            result["column"] = "endDateTime";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        string reportType_s    = (req["reportType"] ?? "").ToString();
        var    checkReportType = Model.BetForm.Define.ReportTypesLangMap.ContainsKey(reportType_s);

        if (checkReportType == false)
        {
            result["result"] = "fail";
            result["msg"]    = "報表型態錯誤";
            result["column"] = "reportType";
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        reportType = reportType_s;

        Model.BetForm.List list = new Model.BetForm.List();
        JArray             brList;

        if (reportType == "m")
        {
            Model.BetForm.List.BetFormSummaryStruct br = new Model.BetForm.List.BetFormSummaryStruct();

            br.L8            = l8;
            br.L7            = l7;
            br.L1            = l1;
            br.LevelId       = levelId;
            br.BetType       = betType;
            br.PeriodId      = periodId;
            br.Status        = status;
            br.BeginDateTime = beginDateTime;
            br.EndDateTime   = endDateTime;
            br.IsDeliver     = isDeliver;

            brList = list.BetFormSummaryStructHandle(br);
        }
        else
        {
            Model.BetForm.List.BetFormDetailStruct br = new Model.BetForm.List.BetFormDetailStruct();

            br.L8            = l8;
            br.L7            = l7;
            br.L1            = l1;
            br.BetType       = betType;
            br.PeriodId      = periodId;
            br.Status        = status;
            br.BeginDateTime = beginDateTime;
            br.EndDateTime   = endDateTime;
            br.IsDeliver     = isDeliver;

            brList = list.BetFormDetailStructHandle(br);
        }

        result["result"] = 0;
        result["column"] = 0;
        result["msg"]    = "";
        result["list"]   = brList;

        Response.Write(JsonConvert.SerializeObject(result));
    }
Esempio n. 17
0
    void GetMemberBetForm()
    {
        JToken result = new JObject();

        Model.Member.Define  memberDefine  = new Model.Member.Define();
        Model.BetForm.Define betFormDefine = new Model.BetForm.Define();

        int      agentLevelId;
        int?     l7     = null;
        int?     l1     = null;
        string   status = null;
        DateTime beginDateTime;
        DateTime endDateTime;

        string agentId_s = (req["agentId"] ?? "").ToString();
        int    agentIdTemp;

        var chkAgentIdFmt = int.TryParse(agentId_s, out agentIdTemp);

        if (chkAgentIdFmt == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "代理帳號格式錯誤";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var chkAgentIdExit = memberDefine.CheckMemberIdExist(agentIdTemp);

        if (chkAgentIdExit == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "代理帳號不存在";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        l7           = agentIdTemp;
        agentLevelId = memberDefine.GetMemberLevelId(agentIdTemp);

        if (agentLevelId != 7)
        {
            result["result"]    = "fail";
            result["msg"]       = "levelId 錯誤";
            result["errorCode"] = ApiErrorCodes.AgentIdExistFalse;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        string externalId_s = (req["externalId"] ?? "").ToString();

        if (externalId_s != "")
        {
            var checkExternalIdExit = memberDefine.CheckMemberExternalIdExist(externalId_s, agentIdTemp);
            if (checkExternalIdExit == false)
            {
                result["result"]    = "fail";
                result["msg"]       = "externalId不存在";
                result["errorCode"] = ApiErrorCodes.NotFindUsername;
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            l1 = memberDefine.GetMemberId(externalId_s, agentIdTemp);
        }

        string status_s = (req["status"] ?? "").ToString();//找狀態

        if (status_s != "")
        {
            var chkStatusExist = Model.BetForm.Define.BetFormStatusLangMap.ContainsKey(status_s);
            if (chkStatusExist == false)
            {
                result["result"]    = "fail";
                result["msg"]       = "status不存在";
                result["errorCode"] = ApiErrorCodes.UsernameFormatError;
                Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            status = status_s;
        }

        string beginDateTime_s = (req["beginDateTime"] ?? "").ToString();
        string endDateTime_s   = (req["endDateTime"] ?? "").ToString();

        if (beginDateTime_s == "" || endDateTime_s == "")
        {
            result["result"]    = "fail";
            result["msg"]       = "日期必須輸入";
            result["errorCode"] = ApiErrorCodes.DateNull;

            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var s = DateTime.TryParse(beginDateTime_s, out beginDateTime);

        if (s == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "beginDateTime格式錯誤";
            result["errorCode"] = ApiErrorCodes.DateTimeError;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var e = DateTime.TryParse(endDateTime_s, out endDateTime);

        if (e == false)
        {
            result["result"]    = "fail";
            result["msg"]       = "endDateTime格式錯誤";
            result["errorCode"] = ApiErrorCodes.DateTimeError;
            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        var i = new TimeSpan(endDateTime.Ticks - beginDateTime.Ticks).TotalMinutes;

        if (i > 30000)
        {
            result["result"]    = "fail";
            result["msg"]       = "日期區間間隔必須小於30分鐘";
            result["errorCode"] = ApiErrorCodes.DateTimeInterval30;

            Response.Write(JsonConvert.SerializeObject(result));
            return;
        }

        Model.BetForm.List list = new Model.BetForm.List();
        Model.BetForm.List.BetFormDetailStruct br = new Model.BetForm.List.BetFormDetailStruct();

        br.L7            = l7;
        br.L1            = l1;
        br.Status        = status;
        br.BeginDateTime = beginDateTime;
        br.EndDateTime   = endDateTime;

        var brList = list.BetFormDetailStructHandle(br);

        result["result"]    = 0;
        result["errorCode"] = 0;
        result["msg"]       = "";
        result["list"]      = brList;

        Response.Write(JsonConvert.SerializeObject(result));
    }