public uint Execute(PacketDistributed ipacket)
        {
            GC_RESTAURANT_DESTUPDATE packet = (GC_RESTAURANT_DESTUPDATE)ipacket;

            if (null == packet)
            {
                return((uint)PACKET_EXE.PACKET_EXE_ERROR);
            }
            RestaurantData.UpdatePlayerDeskData(packet);
            return((uint)PACKET_EXE.PACKET_EXE_CONTINUE);
        }
    // 更新餐桌信息
    public static void UpdateDeskInfo(RestaurantInfo curRestaurant, GC_RESTAURANT_DESTUPDATE data)
    {
        int curDeskIndex = data.DestIndex;

        if (curDeskIndex >= curRestaurant.m_Desks.Length)
        {
            LogModule.ErrorLog("desk index is big than define " + curDeskIndex);
            return;
        }

        DeskInfo curDeskData = curRestaurant.m_Desks[curDeskIndex];

        curDeskData.m_IsActive  = true;
        curDeskData.m_DestState = (DeskState)data.DeskState;
        if (curDeskData.m_DestState == DeskState.EatFood)
        {
            for (int i = 0; i < data.deskGuestIDsCount; i++)
            {
                curDeskData.m_GuestIDs[i] = data.deskGuestIDsList[i];
            }
        }
        if (data.HasDeskFoodID)
        {
            curDeskData.m_FoodID = data.DeskFoodID;
        }
        else
        {
            curDeskData.m_FoodID = -1;
        }
        curDeskData.m_DeskFinishTime = (data.HasActionFinishTimer ? data.ActionFinishTimer : 0) + (int)Time.realtimeSinceStartup;
        int nRestaurantTipCount = 0;

        for (int i = 0; i < m_PlayerRestaurantInfo.m_Desks.Length; i++)
        {
            DeskInfo oDeskData = m_PlayerRestaurantInfo.m_Desks[i];
            if (oDeskData.m_IsActive && oDeskData.m_DestState == DeskState.WaitBilling)
            {
                nRestaurantTipCount++;
            }
        }
        if (!data.HasFriendGuid)
        {
            m_restaurantTipsCount = nRestaurantTipCount;

            if (MenuBarLogic.Instance() != null)
            {
                MenuBarLogic.Instance().UpdateRestaurantTips();
            }
            if (PlayerFrameLogic.Instance() != null)
            {
                PlayerFrameLogic.Instance().UpdateRemainNum();
            }
        }
    }
 public static void UpdatePlayerDeskData(GC_RESTAURANT_DESTUPDATE data)
 {
     if (data.HasFriendGuid)
     {
         UpdateDeskInfo(m_FriendRestaurantInfo, data);
         if (null != delUpdateFriendDeskData)
         {
             delUpdateFriendDeskData();
         }
     }
     else
     {
         UpdateDeskInfo(m_PlayerRestaurantInfo, data);
         if (null != delUpdatePlayerDeskData)
         {
             delUpdatePlayerDeskData();
         }
     }
 }