123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243 |
- using UnityEngine;
- using System;
- using System.Collections;
- using System.Linq;
- using Newtonsoft.Json.Linq;
- using System.Collections.Generic;
- public class AuctionProxy : ProxyBase<AuctionProxy>
- {
- public AuctionProxy() => this.opeCode = OpeCode.ope_auction;
-
- /// <summary>
- /// 获取可以出售道具
- /// </summary>
- /// <returns></returns>
- public List<ItemVo> GetCanSellItem()
- {
- List<ItemVo> list = new List<ItemVo>();
- Dictionary<string, ItemVo> collectItemDic = UserProxy.Instance.player.collectItem.collectItemDic;
- foreach (KeyValuePair<string,ItemVo>kv in collectItemDic)
- {
- if (kv.Value.nMo.canAuction == 1)
- {
- list.Add(kv.Value);
- }
- }
- return list;
- }
- /// <summary>
- /// 获取全部拍卖信息
- /// </summary>
- /// <param name="uid"></param>
- /// <param name="callback"></param>
- public void GetUserAuctionItemsInfo(Action<List<AuctionItemModel>> callback)
- {
- Post(CmdCode.cmd_Auction_GetUserAuctionItemsInfo, new object[] { }, resp =>
- {
- List<AuctionItemModel> list = new List<AuctionItemModel>();
- if (resp.result["auction"] != null)
- {
- JArray arr = JArray.Parse(resp.result["auction"].ToString());
- foreach (JToken item in arr)
- {
- AuctionItemModel mo = new AuctionItemModel();
- mo.Initlize(item);
- if (mo.result == "完成" || mo.result == "取消出售" || mo.result == "流拍")
- {
- continue;
- }
- list.Add(mo);
- }
- }
- callback?.Invoke(list);
- });
- }
- /// <summary>
- ///获取玩家上架拍品信息
- /// </summary>
- /// <param name="uid"></param>
- /// <param name="callback"></param>
- public void GetUserUploadAuctionItems(Action<List<AuctionItemModel>> callback)
- {
- Post(CmdCode.cmd_Auction_GetUserUploadAuctionItems, new object[] { }, resp =>
- {
- List<AuctionItemModel> list = new List<AuctionItemModel>();
- if (resp.result["auction"] != null)
- {
- JArray arr = JArray.Parse(resp.result["auction"].ToString());
- foreach (JToken item in arr)
- {
- AuctionItemModel mo = new AuctionItemModel();
- mo.Initlize(item);
- if (mo.result == "完成" || mo.result == "取消出售" || mo.result == "流拍")
- {
- continue;
- }
- list.Add(mo);
- }
- }
- callback?.Invoke(list);
- });
- }
- /// <summary>
- /// 获取玩家竞拍信息
- /// </summary>
- /// <param name="uid"></param>
- /// <param name="callback"></param>
- public void GetUserAuctionItems(Action<List<AuctionItemModel>> callback)
- {
- Post(CmdCode.cmd_Auction_GetUserAuctionItems, new object[] { }, resp =>
- {
- List<AuctionItemModel> list = new List<AuctionItemModel>();
- if (resp.result["auction"] != null)
- {
- JArray arr = JArray.Parse(resp.result["auction"].ToString());
- foreach (JToken item in arr)
- {
- AuctionItemModel mo = new AuctionItemModel();
- mo.Initlize(item);
- if (mo.result == "完成" || mo.result == "取消出售" || mo.result == "流拍")
- {
- continue;
- }
- list.Add(mo);
- }
- }
-
- callback?.Invoke(list);
- });
- }
- /// <summary>
- /// 竞拍
- /// </summary>
- /// <param name="uid"></param>
- /// <param name="callback"></param>
- public void UserAuctionBidItem(int uid,int price,Action<List<AuctionItemModel>> callback)
- {
- Post(CmdCode.cmd_Auction_UserAuctionBidItem, new object[] { uid , price }, resp =>
- {
- var p = UserProxy.Instance.player;
- string res = resp.result["res"].ToString();
- p.baseInfo.cash = Convert.ToInt32(resp.result["cash"].ToString());
- List<AuctionItemModel> list = new List<AuctionItemModel>();
- if (resp.result["auction"] != null)
- {
- JArray arr = JArray.Parse(resp.result["auction"].ToString());
-
- foreach (JToken item in arr)
- {
- AuctionItemModel mo = new AuctionItemModel();
- mo.Initlize(item);
- if (mo.result == "完成" || mo.result == "取消出售" || mo.result == "流拍")
- {
- continue;
- }
- list.Add(mo);
- }
- }
- callback?.Invoke(list);
- });
- }
- /// <summary>
- /// 取消出售
- /// </summary>
- /// <param name="uid"></param>
- /// <param name="callback"></param>
- public void CancelAuction(int uid, Action<List<AuctionItemModel>> callback)
- {
- Post(CmdCode.cmd_Auction_CancelAuction, new object[] { uid }, resp =>
- {
- List<AuctionItemModel> list = new List<AuctionItemModel>();
- if (resp.result["auction"] != null)
- {
- JArray arr = JArray.Parse(resp.result["auction"].ToString());
-
- foreach (JToken item in arr)
- {
- AuctionItemModel mo = new AuctionItemModel();
- mo.Initlize(item);
- if (mo.result == "完成" || mo.result == "取消出售" || mo.result == "流拍")
- {
- continue;
- }
- list.Add(mo);
- }
- }
- callback?.Invoke(list);
- });
- }
- /// <summary>
- /// 上传拍品
- /// </summary>
- /// <param name="uid"></param>
- /// <param name="callback"></param>
- public void UploadAuctionItems(int itemId,int num, int bugoutPrice,int userBidPrice,Action callback)
- {
- Post(CmdCode.cmd_Auction_UploadAuctionItems, new object[] { itemId, num ,bugoutPrice, userBidPrice }, resp =>
- {
- var p = UserProxy.Instance.player;
- p.InitFromStore((JObject)resp.result["store"]);
- callback?.Invoke();
- });
- }
- /// <summary>
- /// 一口价
- /// </summary>
- /// <param name="itemId"></param>
- /// <param name="num"></param>
- /// <param name="bugoutPrice"></param>
- /// <param name="callback"></param>
- public void BuyoutPrice(int uid, Action<List<AuctionItemModel>> callback)
- {
- Post(CmdCode.cmd_Auction_BuyoutPrice, new object[] { uid }, resp =>
- {
- var p = UserProxy.Instance.player;
- p.baseInfo.cash = Convert.ToInt32(resp.result["cash"].ToString());
- List<AuctionItemModel> list = new List<AuctionItemModel>();
- if (resp.result["auction"] != null)
- {
- JArray arr = JArray.Parse(resp.result["auction"].ToString());
- foreach (JToken item in arr)
- {
- AuctionItemModel mo = new AuctionItemModel();
- mo.Initlize(item);
- if (mo.result == "完成" || mo.result == "取消出售" || mo.result == "流拍")
- {
- continue;
- }
- list.Add(mo);
- }
- }
- callback?.Invoke(list);
- });
- }
- }
|