コード例 #1
0
ファイル: GRPCImpl.cs プロジェクト: beelzebub041/GoBike
        public override Task <UpdateShowListResult> UpdatePostShowListFun(UpdateMemberPostShowList request, ServerCallContext context)
        {
            UpdateShowListResult ret = new UpdateShowListResult();

            ret.Result = 0;

            try
            {
                UpdatePostShowList rData = new UpdatePostShowList
                {
                    MemberID = request.MemberID
                };

                string sData = JsonConvert.SerializeObject(rData);

                JObject jsMain = new JObject();

                jsMain.Add("CmdID", (int)C2S_CmdID.emUpdatePostShowList);
                jsMain.Add("Data", JsonConvert.DeserializeObject <JObject>(sData));

                MsgInfo info = new MsgInfo(jsMain.ToString(), this.SendToClient);

                this.addQueue?.Invoke(info);

                ret.Result = 1;
            }
            catch (Exception ex)
            {
                Console.WriteLine($"{ex.Message}");

                SaveLog($"[Error] gRpcImpl::UpdatePostShowListFun, Catch Error, Msg:{ex.Message}");
            }

            return(Task.FromResult(ret));
        }
コード例 #2
0
        /// <summary>
        /// 更新塗鴉牆列表
        /// </summary>
        /// <param name="data"> 封包資料 </param>
        /// <returns> 結果 </returns>
        public string OnUpdatePostShowList(string data)
        {
            string ret = "";

            UpdatePostShowList packet = JsonConvert.DeserializeObject <UpdatePostShowList>(data);

            UpdatePostShowListResult rData = new UpdatePostShowListResult();

            try
            {
                UserInfo userInfo = GetSql().Queryable <UserInfo>().With(SqlSugar.SqlWith.RowLock).Where(it => it.MemberID == packet.MemberID).Single();

                // 會員存在
                if (userInfo != null)
                {
                    JArray jaFriendList = JArray.Parse(userInfo.FriendList);

                    JObject jsInfo = new JObject();
                    jsInfo.Add("MemberID", userInfo.MemberID);
                    jsInfo.Add("FriendList", jaFriendList);
                    jsInfo.Add("MaxCount", 50);

                    List <string> postShowList = algorithm.GetMemberPostShowList(AlgorithmType.ByDateTime, jsInfo.ToString());

                    if (GetRedis((int)Connect.RedisDB.emRedisDB_Post).StringSet($"PostShowList_{userInfo.MemberID}", JArray.FromObject(postShowList).ToString()))
                    {
                        rData.Result = (int)UpdatePostShowListResult.ResultDefine.emResult_Success;

                        SaveLog($"[Info] MessageFcunction::OnUpdatePostShowList Create Post Show List Success");
                    }
                    else
                    {
                        rData.Result = (int)UpdatePostShowListResult.ResultDefine.emResult_Fail;

                        SaveLog($"[Warning] MessageFcunction::OnUpdatePostShowList Create Post Show List Fail");
                    }
                }
                else
                {
                    rData.Result = (int)UpdatePostShowListResult.ResultDefine.emResult_Fail;

                    SaveLog($"[Info] MessageFcunction::OnUpdatePostShowList Can Not Find Member:{packet.MemberID}");
                }
            }
            catch (Exception ex)
            {
                rData.Result = (int)UpdatePostShowListResult.ResultDefine.emResult_Fail;

                SaveLog($"[Error] MessageFcunction::OnUpdatePostShowList Catch Error Msg:{ex.Message}");
            }

            JObject jsMain = new JObject();

            jsMain.Add("CmdID", (int)S2C_CmdID.emUpdatePostShowListResult);
            jsMain.Add("Data", JsonConvert.DeserializeObject <JObject>(JsonConvert.SerializeObject(rData)));

            ret = jsMain.ToString();

            return(ret);
        }