public void BuyMallItem(int resId, int subId)
    {
        if (!MallTable.ContainsKey(resId))
        {
            return;
        }

        if (subId > MAX_SUB_ID || subId < 0)
        {
            return;
        }

        PlayerDataModule module = ModuleManager.Instance.FindModule <PlayerDataModule>();

        if (module == null)
        {
            return;
        }

        module.AddMallBuyTimes(resId);

        MallUIEvent ev = new MallUIEvent(MallUIEvent.MALL_BUY_ITEM);

        ev.resId = resId;
        ev.subId = (int)subId;
        EventSystem.Instance.PushEvent(ev);
    }