Exemple #1
0
        //代理卖钻石
        public static async Task SaleJewel(this AgencyComponent agencyComponent, long sellerUserId, long buyerUserId, int jewelNum, IResponse iResponse)
        {
            if (!agencyComponent.JudgeIsAgency(sellerUserId))
            {
                iResponse.Message = "权限不足";
                return;
            }
            if (sellerUserId == buyerUserId)
            {
                iResponse.Message = "不能卖给自己";
                return;
            }
            User sellerUser = await UserHelp.QueryUserInfo(sellerUserId);

            User buyerUser = await UserHelp.QueryUserInfo(buyerUserId);

            if (buyerUser == null)
            {
                iResponse.Message = "买家不存在";
                return;
            }
            if (sellerUser.Jewel >= jewelNum)
            {
                UserHelp.GoodsChange(sellerUserId, GoodsId.Jewel, jewelNum * -1, GoodsChangeType.AgencyDeal);
                UserHelp.GoodsChange(buyerUserId, GoodsId.Jewel, jewelNum, GoodsChangeType.AgencyDeal);
                agencyComponent.RecordMarketInfo(sellerUserId, buyerUser, jewelNum);
                iResponse.Message = "销售成功";
            }
            else
            {
                iResponse.Message = "钻石不足";
            }
        }