Commit f586ae8c by wangonghui

添加log日志和添加捕获异常

parent 472a3e7d
......@@ -5,5 +5,8 @@
<add key="vizIpMain" value=""/>
<add key="vizIpBack" value=""/>
<add key="leagueId" value="401"/>
<add key="AppID" value="100001"/>
<add key="AppKey" value="ffrw7ilc8i6r3pkzvl"/>
<add key="newUrl" value="http://180.184.78.246:18080/miku/api/open_api/proxy_api/beitai/api/schedule/getdayschedule"/>
</appSettings>
</configuration>
\ No newline at end of file
using DevExpress.ClipboardSource.SpreadsheetML;
using DevExpress.Mvvm;
using log4net;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Security.Policy;
using System.Text;
using System.Threading.Tasks;
......@@ -11,24 +15,25 @@ namespace VIZ.TVP.CBA.Module.Common
{
public static class JsonHelper
{
/// <summary>
/// 日志
/// </summary>
private static readonly ILog Log = LogManager.GetLogger(typeof(JsonHelper));
/// <summary>
/// 根据POST方法请求获取
/// </summary>
/// <param name="url"></param>
/// <param name="dic"></param>
/// <returns></returns>
public static string Post(string url, Dictionary<string, string> dic)
public static string Post(string url, Dictionary<string, string> dic,string key)
{
string result = null;
//try
//{
string result = "";
try
{
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
req.Headers.Add("App-Authorization", key);
StringBuilder builder = new StringBuilder();
int i = 0;
foreach (var item in dic)
......@@ -51,15 +56,12 @@ namespace VIZ.TVP.CBA.Module.Common
{
result = reader.ReadToEnd();
}
// }
//catch (Exception ex)
//{
// log.Error(ex);
//}
//finally
//{
// LogRequest(url, result);
//}
}
catch(Exception ex)
{
Log.Error(ex.Message);
}
return result;
}
......@@ -73,15 +75,23 @@ namespace VIZ.TVP.CBA.Module.Common
public static string GetResult(string url)
{
string data = "";
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
req.Headers["Accept-Encoding"] = "gzip,deflate";
req.AutomaticDecompression = DecompressionMethods.GZip;
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
Stream stream = resp.GetResponseStream();
//获取内容
using (StreamReader reader = new StreamReader(stream, Encoding.UTF8))
try
{
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
req.Headers["Accept-Encoding"] = "gzip,deflate";
req.AutomaticDecompression = DecompressionMethods.GZip;
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
Stream stream = resp.GetResponseStream();
//获取内容
using (StreamReader reader = new StreamReader(stream, Encoding.UTF8))
{
data = reader.ReadToEnd();
}
}
catch(Exception ex)
{
data = reader.ReadToEnd();
Log.Error(ex.Message);
}
return data;
......
using Newtonsoft.Json;
using log4net;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Configuration;
......@@ -18,12 +19,27 @@ namespace VIZ.TVP.CBA.Module.Common
{
public static class JsonModel
{
/// <summary>
/// 添加日志
/// </summary>
private static readonly ILog Log = LogManager.GetLogger(typeof(JsonModel));
//AppConfigUtil.GetAppConfig("url")
//AppConfigUtil.GetAppConfig("leagueId")
public static AppSettingsSection sd = ConfigManage.InitLogConfig().AppSettings;
private static string httpStr = sd.Settings["url"].Value.ToString();
private static string leagueid ="401" ;
//读取配置文件
public static AppSettingsSection sd = ConfigManage.InitLogConfig()?.AppSettings;
//读取url
private static string httpStr = sd?.Settings["url"].Value.ToString();
/// <summary>
/// 读取艾果的数据平台的配置项
/// </summary>
private static string appID = sd.Settings["AppID"].Value.ToString();
private static string appKey = sd.Settings["AppKey"].Value.ToString();
private static string strUrl = sd.Settings["newUrl"].Value.ToString();
private static string leagueid = "401";
private static string customer = "migu";
private static string key = "migu";
private static string encrypted = "JU^MKceci";
......@@ -37,19 +53,44 @@ namespace VIZ.TVP.CBA.Module.Common
/// <returns></returns>
public static Dayschedules TomorrowMatch_Path(string date)
{
string TomorrowMatchPath = httpStr + "schedule/getdayschedule?leagueid="
+ leagueid + "&date=" + date + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
//MessageBox.Show(TomorrowMatchPath);
Console.WriteLine("明日赛程数据接口新新:=======>:" + TomorrowMatchPath);
string result = JsonHelper.GetResult(TomorrowMatchPath);
JsonSerializerSettings settings = new JsonSerializerSettings();
settings.NullValueHandling = NullValueHandling.Ignore;
//Dictionary<string, string> dict = new Dictionary<string, string>();
//dict.Add("leagueid", "401");
//dict.Add("date", "2022-12-17");
//dict.Add("customer", "migu");
//dict.Add("key", "migu");
//dict.Add("random", "4");
//dict.Add("encrypted", "6587d013da014c99032f7d17b096ad73");
//string newKey = Utils.GetKey(appID,appKey);
//var str = JsonHelper.Post(strUrl, dict, newKey);
try
{
string TomorrowMatchPath = httpStr + "schedule/getdayschedule?leagueid="
+ leagueid + "&date=" + date + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
//MessageBox.Show(TomorrowMatchPath);
Console.WriteLine("明日赛程数据接口新新:=======>:" + TomorrowMatchPath);
string result = JsonHelper.GetResult(TomorrowMatchPath);
Dayschedules dayschedules=JsonConvert.DeserializeObject<Dayschedules>(result, settings);
Log.Info("明日赛程数据接口新:=======>:" +result);
JsonSerializerSettings settings = new JsonSerializerSettings();
settings.NullValueHandling = NullValueHandling.Ignore;
Dayschedules dayschedules = JsonConvert.DeserializeObject<Dayschedules>(result, settings);
// Dayschedules aguodayschedules = JsonConvert.DeserializeObject<Dayschedules>(str,settings);
return dayschedules;
}
catch (Exception ex)
{
Log.Error(ex.Message);
return null;
}
return dayschedules;
}
/// <summary>
/// 球队列表数据服务器接口地址
......@@ -57,12 +98,23 @@ namespace VIZ.TVP.CBA.Module.Common
/// <returns></returns>
public static string TeamList_Path(string MatchtypeId)
{
string TeamListPath = httpStr+"schedule/load?leagueid="
+ leagueid + "&matchtypeid=" + MatchtypeId + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
try
{
string TeamListPath = httpStr + "schedule/load?leagueid="
+ leagueid + "&matchtypeid=" + MatchtypeId + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
Console.WriteLine("球队列表数据库服务器接口地址=====>:" + TeamListPath);
Log.Info(TeamListPath);
return TeamListPath;
}
catch(Exception ex)
{
Log.Error(ex.Message);
return null;
}
Console.WriteLine("球队列表数据库服务器接口地址=====>:" + TeamListPath);
return TeamListPath;
}
/// <summary>
/// 球队球员单节数据服务器接口地址
......@@ -70,7 +122,7 @@ namespace VIZ.TVP.CBA.Module.Common
/// <returns></returns>
public static string PlayerTeam_Path(string scheduleid)
{
string PlayerTeamPath = httpStr+ "live/getlivequarterstats?leagueid="
string PlayerTeamPath = httpStr + "live/getlivequarterstats?leagueid="
+ leagueid + "&scheduleid=" + scheduleid + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
Console.WriteLine("一个赛程有多少球员信息和两个球队接口地址=======>:" + PlayerTeamPath);
......@@ -82,9 +134,9 @@ namespace VIZ.TVP.CBA.Module.Common
/// <returns></returns>
public static string PlayerList_Path(string teamid)
{
string PlayerListPath = httpStr+ "player?leagueid="
+ leagueid + "&teamid=" + teamid + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
string PlayerListPath = httpStr + "player?leagueid="
+ leagueid + "&teamid=" + teamid + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
Console.WriteLine("球员列表数据服务器接口地址=====>:" + PlayerListPath);
return PlayerListPath;
}
......@@ -95,19 +147,29 @@ namespace VIZ.TVP.CBA.Module.Common
/// <returns></returns>
public static PlayerSeasonData PlayerSeasonData_Path(string matchtypeid)
{
string PlayerSeasonDataPath = httpStr+ "player/getplayerstats?leagueid="
+ leagueid + "&matchtypeid=" + matchtypeid + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
//MessageBox.Show(PlayerSeasonDataPath);
Console.WriteLine("球员赛季数据的服务器接口地址====>:" + PlayerSeasonDataPath);
string result = JsonHelper.GetResult(PlayerSeasonDataPath);
JsonSerializerSettings settings = new JsonSerializerSettings();
settings.NullValueHandling = NullValueHandling.Ignore;
PlayerSeasonData playerSeasonData=JsonConvert.DeserializeObject<PlayerSeasonData>(result);
return playerSeasonData;
try
{
string PlayerSeasonDataPath = httpStr + "player/getplayerstats?leagueid="
+ leagueid + "&matchtypeid=" + matchtypeid + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
//MessageBox.Show(PlayerSeasonDataPath);
Console.WriteLine("球员赛季数据的服务器接口地址====>:" + PlayerSeasonDataPath);
string result = JsonHelper.GetResult(PlayerSeasonDataPath);
JsonSerializerSettings settings = new JsonSerializerSettings();
settings.NullValueHandling = NullValueHandling.Ignore;
PlayerSeasonData playerSeasonData = JsonConvert.DeserializeObject<PlayerSeasonData>(result);
Log.Info(result);
return playerSeasonData;
}
catch(Exception ex)
{
Log.Error(ex.Message);
return null;
}
}
......@@ -118,19 +180,29 @@ namespace VIZ.TVP.CBA.Module.Common
/// <returns></returns>
public static RoundSchedules GetGameRound_Path(string round)
{
string GameRoundDataPath = httpStr+ "schedule/getschedulelist?leagueid="
+ leagueid + "&round=" + round + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
//MessageBox.Show(PlayerSeasonDataPath);
Console.WriteLine("指定轮数的赛程的服务器接口地址====>:" + GameRoundDataPath);
string result = JsonHelper.GetResult(GameRoundDataPath);
JsonSerializerSettings settings = new JsonSerializerSettings();
settings.NullValueHandling = NullValueHandling.Ignore;
RoundSchedules roundSchedules = JsonConvert.DeserializeObject<RoundSchedules>(result, settings);
return roundSchedules;
try
{
string GameRoundDataPath = httpStr + "schedule/getschedulelist?leagueid="
+ leagueid + "&round=" + round + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
//MessageBox.Show(PlayerSeasonDataPath);
Console.WriteLine("指定轮数的赛程的服务器接口地址====>:" + GameRoundDataPath);
string result = JsonHelper.GetResult(GameRoundDataPath);
Log.Info("指定轮数的赛程的服务器接口地址====>:"+result);
JsonSerializerSettings settings = new JsonSerializerSettings();
settings.NullValueHandling = NullValueHandling.Ignore;
RoundSchedules roundSchedules = JsonConvert.DeserializeObject<RoundSchedules>(result, settings);
return roundSchedules;
}
catch (Exception ex)
{
Log.Error(ex.Message);
return null;
}
}
/// <summary>
/// 全量直播数据
......@@ -139,21 +211,29 @@ namespace VIZ.TVP.CBA.Module.Common
/// <returns></returns>
public static OnAirDataModel OnAirData_Path(string scheduleid)
{
string OnAirDataPath = httpStr + "live?leagueid="
+ leagueid + "&scheduleid=" + scheduleid + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
//MessageBox.Show(OnAirDataPath);
Console.WriteLine("全量直播数据==>:" + OnAirDataPath);
string result = JsonHelper.GetResult(OnAirDataPath);
JsonSerializerSettings settings = new JsonSerializerSettings();
settings.NullValueHandling = NullValueHandling.Ignore;
OnAirDataModel onAirDataModel = JsonConvert.DeserializeObject<OnAirDataModel>(result, settings);
return onAirDataModel;
try
{
string OnAirDataPath = httpStr + "live?leagueid="
+ leagueid + "&scheduleid=" + scheduleid + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
//MessageBox.Show(OnAirDataPath);
Console.WriteLine("全量直播数据==>:" + OnAirDataPath);
string result = JsonHelper.GetResult(OnAirDataPath);
Log.Info(result);
JsonSerializerSettings settings = new JsonSerializerSettings();
settings.NullValueHandling = NullValueHandling.Ignore;
OnAirDataModel onAirDataModel = JsonConvert.DeserializeObject<OnAirDataModel>(result, settings);
return onAirDataModel;
}
catch (Exception ex)
{
Log.Error(ex.Message);
return null;
}
}
/// <summary>
......@@ -162,21 +242,27 @@ namespace VIZ.TVP.CBA.Module.Common
/// <returns></returns>
public static TeamSeasonData TeamSeasonData_Path(string matchtypeid)
{
string TeamSeasonDataPath = httpStr+ "team/getteamstats?leagueid="
+ leagueid + "&matchtypeid=" + matchtypeid + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
Console.WriteLine("球队赛季接口数据==>:" + TeamSeasonDataPath);
string result = JsonHelper.GetResult(TeamSeasonDataPath);
JsonSerializerSettings settings = new JsonSerializerSettings();
settings.NullValueHandling = NullValueHandling.Ignore;
TeamSeasonData teamSeasonData = JsonConvert.DeserializeObject<TeamSeasonData>(result, settings);
return teamSeasonData;
try
{
string TeamSeasonDataPath = httpStr + "team/getteamstats?leagueid="
+ leagueid + "&matchtypeid=" + matchtypeid + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
Console.WriteLine("球队赛季接口数据==>:" + TeamSeasonDataPath);
string result = JsonHelper.GetResult(TeamSeasonDataPath);
Log.Info(result);
JsonSerializerSettings settings = new JsonSerializerSettings();
settings.NullValueHandling = NullValueHandling.Ignore;
TeamSeasonData teamSeasonData = JsonConvert.DeserializeObject<TeamSeasonData>(result, settings);
return teamSeasonData;
}
catch(Exception ex)
{
Log.Error(ex.Message);
return null;
}
}
/// <summary>
......@@ -185,19 +271,29 @@ namespace VIZ.TVP.CBA.Module.Common
/// <returns></returns>
public static TeamRanks TeamScoreData_Path()
{
string TeamScoreDataPath = httpStr+ "team/getteamstanding?leagueid="
+ leagueid + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
try
{
string TeamScoreDataPath = httpStr + "team/getteamstanding?leagueid="
+ leagueid + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
string result = JsonHelper.GetResult(TeamScoreDataPath);
JsonSerializerSettings settings = new JsonSerializerSettings();
settings.NullValueHandling = NullValueHandling.Ignore;
string result = JsonHelper.GetResult(TeamScoreDataPath);
TeamRanks teamRanks = JsonConvert.DeserializeObject<TeamRanks>(result, settings);
Log.Info(result);
JsonSerializerSettings settings = new JsonSerializerSettings();
settings.NullValueHandling = NullValueHandling.Ignore;
Console.WriteLine("球队积分排行数据============>:" + TeamScoreDataPath);
TeamRanks teamRanks = JsonConvert.DeserializeObject<TeamRanks>(result, settings);
return teamRanks;
Console.WriteLine("球队积分排行数据============>:" + TeamScoreDataPath);
return teamRanks;
}
catch(Exception ex)
{
Log.Error(ex.Message);
return null;
}
}
/// <summary>
......@@ -207,9 +303,9 @@ namespace VIZ.TVP.CBA.Module.Common
/// <returns></returns>
public static string KnobbleData_Path(string scheduleid)
{
string KnobbleDataPath = httpStr + "live/getlivequarterstats?leagueid="
+ leagueid + "&scheduleid=" + scheduleid + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
string KnobbleDataPath = httpStr + "live/getlivequarterstats?leagueid="
+ leagueid + "&scheduleid=" + scheduleid + "&customer=" + customer + "&key=" + key + "&encrypted="
+ Utils.GetMD5(key + encrypted + random) + "&random=" + random;
//Console.WriteLine(KnobbleDataPath);
Console.WriteLine("比赛小节数据=======>:" + KnobbleDataPath);
......@@ -222,8 +318,8 @@ namespace VIZ.TVP.CBA.Module.Common
/// <returns></returns>
public static string HistoricalRecordData_Path(string scheduleid)
{
string HistoricalRecordDataPath = httpStr + "schedule/headtohead?customer="
+ customer + "&key=" + key + "&encrypted=" + Utils.GetMD5(key + encrypted + random) + "&random=" + random + "&scheduleid=" + scheduleid;
string HistoricalRecordDataPath = httpStr + "schedule/headtohead?customer="
+ customer + "&key=" + key + "&encrypted=" + Utils.GetMD5(key + encrypted + random) + "&random=" + random + "&scheduleid=" + scheduleid;
//Console.WriteLine(HistoricalRecordDataPath);
Console.WriteLine("历史交锋记录服务器地址=======>:" + HistoricalRecordDataPath);
......@@ -239,8 +335,8 @@ namespace VIZ.TVP.CBA.Module.Common
//旧对阵图
//EncounterPictureDataPath = "http://sportsdata.misports.cn/beitai/api/schedule/getpostseason?leagueid="
// + leagueid + "&customer=" + customer + "&key=" + key +"&season=2019"+ "&encrypted=" + GetMD5(key+encrypted + random) + "&random=" + random;
string EncounterPictureDataPath = httpStr + "schedule/getpostseason?leagueid="
+ leagueid + "&customer=" + customer + "&key=" + key + "&encrypted=" + Utils.GetMD5(key + encrypted + random) + "&random=" + random;
string EncounterPictureDataPath = httpStr + "schedule/getpostseason?leagueid="
+ leagueid + "&customer=" + customer + "&key=" + key + "&encrypted=" + Utils.GetMD5(key + encrypted + random) + "&random=" + random;
Console.WriteLine("对阵图数据地址======>:" + EncounterPictureDataPath);
return EncounterPictureDataPath;
}
......
......@@ -34,6 +34,34 @@ namespace VIZ.TVP.CBA.Module.Common
}
/// <summary>
/// 艾果的密钥加密
/// </summary>
/// <param name="appId"></param>
/// <param name="appKey"></param>
/// <returns></returns>
public static string GetKey(string appId,string appKey)
{
int random = new Random().Next(0, 100);
long timeStamp = DateToTicks(DateTime.Now);
string key = Convert.ToBase64String(Encoding.UTF8.GetBytes(string.Format("{0},{1},{2},{3}",appId,appKey,timeStamp,random)));
return key;
}
/// <summary>
/// 获取时间戳
/// </summary>
/// <param name="time"></param>
/// <returns></returns>
public static long DateToTicks(DateTime? time)
{
return ((time.HasValue ? time.Value.Ticks : DateTime.Parse("1990-01-01").Ticks) - 621355968000000000) / 10000;
}
/// <summary>
/// 设置主队和客队球员技术数据统计
/// </summary>
/// <param name="mainViewModel"></param>
......
using System;
using log4net;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.IO;
......@@ -11,6 +12,8 @@ namespace VIZ.TVP.CBA.Module
{
public static class ConfigManage
{
private static ILog Log = LogManager.GetLogger(typeof(ConfigManage));
#region 1.获取当前类库的文件配置
public static Configuration InitLogConfig()
......@@ -35,8 +38,9 @@ namespace VIZ.TVP.CBA.Module
}
catch (Exception ex)
{
throw new Exception(ex.Message);
//throw new Exception(ex.Message);
Log.Error(ex.Message);
return null;
}
#endregion
......
......@@ -9,15 +9,21 @@ using VIZ.TVP.CBA.Module.Common;
using VIZ.TVP.CBA.Module.DayMatch.Model;
using VIZ.TVP.CBA.Module.TempEnum;
using VIZ.TVP.CBA.Domain;
using log4net;
namespace VIZ.TVP.CBA.Module.DayMatch.ViewModel
{
public class DayMatchViewModel : ViewModelBase
{
/// <summary>
/// 日志
/// </summary>
private static ILog Log= LogManager.GetLogger(typeof(DayMatchViewModel));
public DayMatchViewModel()
{
BtnCmd = new VCommand(BtnCommand);
BtnMatchDayUp = new VCommand(BtnMatchDayUpData);
matchDate = DateTime.Today.ToShortDateString();
......@@ -55,7 +61,7 @@ namespace VIZ.TVP.CBA.Module.DayMatch.ViewModel
/// </summary>
private void BtnMatchDayUpData()
{
Log.Info("比赛日期上版和数据:"+ CombineMatchData());
ApplicationDomainEx.VizEngineModel.STAGE_START("Default/JRSCBEN", "Data", CombineMatchData());
}
......@@ -115,37 +121,48 @@ namespace VIZ.TVP.CBA.Module.DayMatch.ViewModel
/// </summary>
private void GetSchedule()
{
string date = Convert.ToDateTime(matchDate).ToString("yyyy-MM-dd");
try
{
var dayschedules = JsonModel.TomorrowMatch_Path(date);
// matchData.AddRange(dayschedules.dayschedule);
string date = Convert.ToDateTime(matchDate).ToString("yyyy-MM-dd");
MatchData = new ObservableCollection<Dayschedule>();
foreach (var dayschedule in dayschedules.dayschedule)
{
if (dayschedule.Status == "1")
{
dayschedule.Status = "未开赛";
}
else if (dayschedule.Status == "2")
{
dayschedule.Status = "进行中";
}
else if (dayschedule.Status == "3")
{
dayschedule.Status = "进行中";
}
else if (dayschedule.Status == "4")
{
dayschedule.Status = "已结束";
}
else if (dayschedule.Status == "5")
var dayschedules = JsonModel.TomorrowMatch_Path(date);
if (dayschedules == null) return;
// matchData.AddRange(dayschedules.dayschedule);
MatchData = new ObservableCollection<Dayschedule>();
foreach (var dayschedule in dayschedules.dayschedule)
{
dayschedule.Status = "延期";
if (dayschedule.Status == "1")
{
dayschedule.Status = "未开赛";
}
else if (dayschedule.Status == "2")
{
dayschedule.Status = "进行中";
}
else if (dayschedule.Status == "3")
{
dayschedule.Status = "进行中";
}
else if (dayschedule.Status == "4")
{
dayschedule.Status = "已结束";
}
else if (dayschedule.Status == "5")
{
dayschedule.Status = "延期";
}
MatchData.Add(dayschedule);
}
MatchData.Add(dayschedule);
}
catch(Exception ex)
{
Log.Error(ex.Message);
}
}
......
......@@ -30,13 +30,13 @@ namespace VIZ.TVP.CBA.Module
{
MainViewModel vm = MainViewModel.CreateInstance;
SinglePlayerViewModel singlePlayVM = SinglePlayerViewModel.CreateInstance;
//SinglePlayerViewModel singlePlayVM = SinglePlayerViewModel.CreateInstance;
PlayerCompareViewModel PlayerCompareViewModel = PlayerCompareViewModel.CreateInstance;
//PlayerCompareViewModel PlayerCompareViewModel = PlayerCompareViewModel.CreateInstance;
TeamStatsViewModel teamStatsViewModel=TeamStatsViewModel.CreateInstance;
//TeamStatsViewModel teamStatsViewModel=TeamStatsViewModel.CreateInstance;
public string ScheduleID = "";
//public string ScheduleID = "";
public MainView()
{
......@@ -44,161 +44,161 @@ namespace VIZ.TVP.CBA.Module
WPFHelper.BindingViewModel(this,vm);
}
private void ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
if(vm.SelectMatchItems!=null&&vm.SetMatchDict.ContainsKey(vm. SelectMatchItems))
{
ScheduleID = vm.SetMatchDict[vm. SelectMatchItems];
vm.onAirDataModel = JsonModel.OnAirData_Path(ScheduleID);
//private void ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
//{
// if(vm.SelectMatchItems!=null&&vm.SetMatchDict.ContainsKey(vm. SelectMatchItems))
// {
// ScheduleID = vm.SetMatchDict[vm. SelectMatchItems];
// vm.onAirDataModel = JsonModel.OnAirData_Path(ScheduleID);
vm.ScheduleID = ScheduleID;
// vm.ScheduleID = ScheduleID;
if (vm.onAirDataModel != null)
{
// if (vm.onAirDataModel != null)
// {
if (vm.onAirDataModel.liveTeamInfo.StatusCNName == "")
{
vm.MatchStatus = "未开始";
}
else if (vm.onAirDataModel.liveTeamInfo.StatusCNName != "")
{
vm.MatchStatus = vm.onAirDataModel.liveTeamInfo.StatusCNName;
}
}
else
{
vm.MatchStatus = "未开始";
}
// if (vm.onAirDataModel.liveTeamInfo.StatusCNName == "")
// {
// vm.MatchStatus = "未开始";
// }
// else if (vm.onAirDataModel.liveTeamInfo.StatusCNName != "")
// {
// vm.MatchStatus = vm.onAirDataModel.liveTeamInfo.StatusCNName;
// }
// }
// else
// {
// vm.MatchStatus = "未开始";
// }
singlePlayVM.TeamItems=new System.Collections.ObjectModel.ObservableCollection<string>();
singlePlayVM.TeamItems.Add(vm.onAirDataModel.liveTeamInfo.HomeTeamCNAlias);
singlePlayVM.TeamItems.Add(vm.onAirDataModel.liveTeamInfo.VisitingTeamCNAlias);
// singlePlayVM.TeamItems=new System.Collections.ObjectModel.ObservableCollection<string>();
// singlePlayVM.TeamItems.Add(vm.onAirDataModel.liveTeamInfo.HomeTeamCNAlias);
// singlePlayVM.TeamItems.Add(vm.onAirDataModel.liveTeamInfo.VisitingTeamCNAlias);
PlayerCompareViewModel.HName = vm.onAirDataModel.liveTeamInfo.HomeTeamCNAlias;
// PlayerCompareViewModel.HName = vm.onAirDataModel.liveTeamInfo.HomeTeamCNAlias;
PlayerCompareViewModel.AName = vm.onAirDataModel.liveTeamInfo.VisitingTeamCNAlias;
// PlayerCompareViewModel.AName = vm.onAirDataModel.liveTeamInfo.VisitingTeamCNAlias;
teamStatsViewModel.HomeTeam = vm.onAirDataModel.liveTeamInfo.HomeTeamCNAlias;
// teamStatsViewModel.HomeTeam = vm.onAirDataModel.liveTeamInfo.HomeTeamCNAlias;
teamStatsViewModel.AwayTeam = vm.onAirDataModel.liveTeamInfo.VisitingTeamCNAlias;
// teamStatsViewModel.AwayTeam = vm.onAirDataModel.liveTeamInfo.VisitingTeamCNAlias;
PlayerCompareViewModel.SetPlayer();
// PlayerCompareViewModel.SetPlayer();
vm.PlayerSeasonData = JsonModel.PlayerSeasonData_Path(vm.Matchtypeid);
// vm.PlayerSeasonData = JsonModel.PlayerSeasonData_Path(vm.Matchtypeid);
vm.TeamSeasonData = JsonModel.TeamSeasonData_Path(vm.Matchtypeid);
// vm.TeamSeasonData = JsonModel.TeamSeasonData_Path(vm.Matchtypeid);
SetTeamCompare();
// SetTeamCompare();
}
}
// }
//}
private void SetTeamCompare()
{
//SetHomeTeamDictionary();
//SetVisitTeamDictionary();
SetTeamSeasonDictionary();
//SetHData();
//SetAData();
//private void SetTeamCompare()
//{
// //SetHomeTeamDictionary();
// //SetVisitTeamDictionary();
// SetTeamSeasonDictionary();
// //SetHData();
// //SetAData();
//Utils.SetHomeTeamDictionary(vm);
//Utils.SetVisitTeamDictionary(vm);
//Utils.SetHData(vm, teamStatsViewModel);
//Utils.SetAData(vm, teamStatsViewModel);
// //Utils.SetHomeTeamDictionary(vm);
// //Utils.SetVisitTeamDictionary(vm);
// //Utils.SetHData(vm, teamStatsViewModel);
// //Utils.SetAData(vm, teamStatsViewModel);
}
//}
private void SetTeamSeasonDictionary()
{
vm.CNAliasVisitSportsDictionary.Clear();
//private void SetTeamSeasonDictionary()
//{
// vm.CNAliasVisitSportsDictionary.Clear();
foreach (var teamSeasonData in vm.TeamSeasonData.teamstats)
{
// foreach (var teamSeasonData in vm.TeamSeasonData.teamstats)
// {
Dictionary<string, string> CompareItemToNumber = new Dictionary<string, string>();
// Dictionary<string, string> CompareItemToNumber = new Dictionary<string, string>();
CompareItemToNumber.Add("Goal", teamSeasonData.PointsAverage);
CompareItemToNumber.Add("Rebounds", teamSeasonData.ReboundsAverage);
CompareItemToNumber.Add("Assists", teamSeasonData.AssistsAverage);
CompareItemToNumber.Add("Steals", teamSeasonData.BlockedAverage);
CompareItemToNumber.Add("Blocks", teamSeasonData.StealsAverage);
CompareItemToNumber.Add("Error", teamSeasonData.TurnoversAverage);
CompareItemToNumber.Add("Foul", teamSeasonData.PersonalFoulsAverage);
//HomeTeamCompareOptionDictionary.Add(TeamDataCompareOptionChinese[7], Json_OnAirData.liveTeamStatH.FlagrantFouls);
CompareItemToNumber.Add("FreeThrowP", (teamSeasonData.FreeThrowsPercentageAverage ).ToString("F1") + "%");
CompareItemToNumber.Add("TwoShootingGoalP", (teamSeasonData.TwoPointPercentageAverage ).ToString("F1") + "%");
CompareItemToNumber.Add("ThreeShootingGoalP", (teamSeasonData.ThreePointPercentageAverage ).ToString("F1") + "%");
CompareItemToNumber.Add("ShootingGoalP", (teamSeasonData.FieldGoalsPercentageAverage ).ToString("F1") + "%");
CompareItemToNumber.Add("ShootingUnderBaketP", (teamSeasonData.FieldGoalsAtRimPercentageAverage * 100).ToString("F1") + "%");
CompareItemToNumber.Add("MidShootingP", (teamSeasonData.FieldGoalsMidRangePercentageAverage * 100).ToString("F1") + "%");
// CompareItemToNumber.Add("Goal", teamSeasonData.PointsAverage);
// CompareItemToNumber.Add("Rebounds", teamSeasonData.ReboundsAverage);
// CompareItemToNumber.Add("Assists", teamSeasonData.AssistsAverage);
// CompareItemToNumber.Add("Steals", teamSeasonData.BlockedAverage);
// CompareItemToNumber.Add("Blocks", teamSeasonData.StealsAverage);
// CompareItemToNumber.Add("Error", teamSeasonData.TurnoversAverage);
// CompareItemToNumber.Add("Foul", teamSeasonData.PersonalFoulsAverage);
// //HomeTeamCompareOptionDictionary.Add(TeamDataCompareOptionChinese[7], Json_OnAirData.liveTeamStatH.FlagrantFouls);
// CompareItemToNumber.Add("FreeThrowP", (teamSeasonData.FreeThrowsPercentageAverage ).ToString("F1") + "%");
// CompareItemToNumber.Add("TwoShootingGoalP", (teamSeasonData.TwoPointPercentageAverage ).ToString("F1") + "%");
// CompareItemToNumber.Add("ThreeShootingGoalP", (teamSeasonData.ThreePointPercentageAverage ).ToString("F1") + "%");
// CompareItemToNumber.Add("ShootingGoalP", (teamSeasonData.FieldGoalsPercentageAverage ).ToString("F1") + "%");
// CompareItemToNumber.Add("ShootingUnderBaketP", (teamSeasonData.FieldGoalsAtRimPercentageAverage * 100).ToString("F1") + "%");
// CompareItemToNumber.Add("MidShootingP", (teamSeasonData.FieldGoalsMidRangePercentageAverage * 100).ToString("F1") + "%");
vm.CNAliasVisitSportsDictionary.Add(teamSeasonData.TeamCNAlias, CompareItemToNumber);
}
// vm.CNAliasVisitSportsDictionary.Add(teamSeasonData.TeamCNAlias, CompareItemToNumber);
// }
}
//}
private void Date_MatchDateInfo_SelectedDateChanged(object sender, SelectionChangedEventArgs e)
{
vm.GetSchedule();
//private void Date_MatchDateInfo_SelectedDateChanged(object sender, SelectionChangedEventArgs e)
//{
// vm.GetSchedule();
vm.PlayerSeasonData = JsonModel.PlayerSeasonData_Path(vm.Matchtypeid);
// vm.PlayerSeasonData = JsonModel.PlayerSeasonData_Path(vm.Matchtypeid);
vm.TeamSeasonData = JsonModel.TeamSeasonData_Path(vm.Matchtypeid);
// vm.TeamSeasonData = JsonModel.TeamSeasonData_Path(vm.Matchtypeid);
vm.CNAliasPlayerSportsDictionary.Clear();
foreach (var tempSeasonData in vm.PlayerSeasonData.playerstats)
{
Dictionary<string, string> CompareItemToNumber = new Dictionary<string, string>();
// vm.CNAliasPlayerSportsDictionary.Clear();
// foreach (var tempSeasonData in vm.PlayerSeasonData.playerstats)
// {
// Dictionary<string, string> CompareItemToNumber = new Dictionary<string, string>();
CompareItemToNumber.Add("Goal", tempSeasonData.PointsAverage);
CompareItemToNumber.Add("Rebounds", tempSeasonData.ReboundsAverage);
CompareItemToNumber.Add("Assists", tempSeasonData.AssistsAverage);
CompareItemToNumber.Add("Steals", tempSeasonData.StealsAverage);
CompareItemToNumber.Add("Blocks", tempSeasonData.BlockedAverage);
CompareItemToNumber.Add("PlayTime",tempSeasonData.MinutesAverage);
CompareItemToNumber.Add("ShootingGoalP", (tempSeasonData. FieldGoalsPercentageAverage).ToString("F1")+"%");
CompareItemToNumber.Add("TwoShootingGoalP", (tempSeasonData.TwoPointPercentageAverage).ToString("F1") + "%");
// CompareItemToNumber.Add("Goal", tempSeasonData.PointsAverage);
// CompareItemToNumber.Add("Rebounds", tempSeasonData.ReboundsAverage);
// CompareItemToNumber.Add("Assists", tempSeasonData.AssistsAverage);
// CompareItemToNumber.Add("Steals", tempSeasonData.StealsAverage);
// CompareItemToNumber.Add("Blocks", tempSeasonData.BlockedAverage);
// CompareItemToNumber.Add("PlayTime",tempSeasonData.MinutesAverage);
// CompareItemToNumber.Add("ShootingGoalP", (tempSeasonData. FieldGoalsPercentageAverage).ToString("F1")+"%");
// CompareItemToNumber.Add("TwoShootingGoalP", (tempSeasonData.TwoPointPercentageAverage).ToString("F1") + "%");
CompareItemToNumber.Add("ThreeShootingGoalP", (tempSeasonData.ThreePointPercentageAverage).ToString("F1") + "%");
CompareItemToNumber.Add("FreeThrowP", (tempSeasonData.FreeThrowsPercentageAverage).ToString("F1") + "%");
CompareItemToNumber.Add("ShootingUnderBaketP", (tempSeasonData.FieldGoalsAtRimPercentageAverage*100).ToString("F1") + "%");
CompareItemToNumber.Add("MidShootingP", (tempSeasonData.FieldGoalsMidRangePercentageAverage * 100).ToString("F1") + "%");
CompareItemToNumber.Add("ThreeScore", tempSeasonData.ThreePointGoalsAverage + "/"
+ tempSeasonData.ThreePointAttemptedAverage);
// CompareItemToNumber.Add("ThreeShootingGoalP", (tempSeasonData.ThreePointPercentageAverage).ToString("F1") + "%");
// CompareItemToNumber.Add("FreeThrowP", (tempSeasonData.FreeThrowsPercentageAverage).ToString("F1") + "%");
// CompareItemToNumber.Add("ShootingUnderBaketP", (tempSeasonData.FieldGoalsAtRimPercentageAverage*100).ToString("F1") + "%");
// CompareItemToNumber.Add("MidShootingP", (tempSeasonData.FieldGoalsMidRangePercentageAverage * 100).ToString("F1") + "%");
// CompareItemToNumber.Add("ThreeScore", tempSeasonData.ThreePointGoalsAverage + "/"
// + tempSeasonData.ThreePointAttemptedAverage);
CompareItemToNumber.Add("TwoScore", tempSeasonData.TwoPointGoalsAverage + "/"
+ tempSeasonData.TwoPointAttemptedAverage);
// CompareItemToNumber.Add("TwoScore", tempSeasonData.TwoPointGoalsAverage + "/"
// + tempSeasonData.TwoPointAttemptedAverage);
CompareItemToNumber.Add("TwoArea", tempSeasonData.TwoPointGoalsAverage + "/"
+ tempSeasonData.TwoPointAttemptedAverage);
CompareItemToNumber.Add("ThreeArea", tempSeasonData.ThreePointGoalsAverage + "/"
// CompareItemToNumber.Add("TwoArea", tempSeasonData.TwoPointGoalsAverage + "/"
// + tempSeasonData.TwoPointAttemptedAverage);
// CompareItemToNumber.Add("ThreeArea", tempSeasonData.ThreePointGoalsAverage + "/"
+ tempSeasonData.ThreePointAttemptedAverage);
//CompareItemToNumber.Add("ThreeArea",);
// + tempSeasonData.ThreePointAttemptedAverage);
// //CompareItemToNumber.Add("ThreeArea",);
CompareItemToNumber.Add("FreeThrow", tempSeasonData.FreeThrowsAverage + "/"
+ tempSeasonData.FreeThrowsAttemptedAverage);
CompareItemToNumber.Add("Error",tempSeasonData.TurnoversAverage);
// CompareItemToNumber.Add("FreeThrow", tempSeasonData.FreeThrowsAverage + "/"
// + tempSeasonData.FreeThrowsAttemptedAverage);
// CompareItemToNumber.Add("Error",tempSeasonData.TurnoversAverage);
if (!vm.CNAliasPlayerSportsDictionary.ContainsKey(tempSeasonData.CNAlias))
{
vm.CNAliasPlayerSportsDictionary.Add(tempSeasonData.CNAlias, CompareItemToNumber);
}
// if (!vm.CNAliasPlayerSportsDictionary.ContainsKey(tempSeasonData.CNAlias))
// {
// vm.CNAliasPlayerSportsDictionary.Add(tempSeasonData.CNAlias, CompareItemToNumber);
// }
}
// }
}
//}
}
}
......@@ -11,12 +11,14 @@ using VIZ.TVP.CBA.Module.DayMatch.Model;
using VIZ.TVP.CBA.Module.OnAirData;
using VIZ.TVP.CBA.Module.SeasonData;
using VIZ.TVP.CBA.Domain;
using log4net;
namespace VIZ.TVP.CBA.Module.Main.ViewModel
{
public class MainViewModel : ViewModelBase
{
private static ILog Log= LogManager.GetLogger(typeof(MainViewModel));
private static MainViewModel _createInstance = null;
......@@ -33,182 +35,184 @@ namespace VIZ.TVP.CBA.Module.Main.ViewModel
}
public OnAirDataModel onAirDataModel = new OnAirDataModel();
// public OnAirDataModel onAirDataModel = new OnAirDataModel();
public MainViewModel()
{
matchDate = DateTime.Today.ToShortDateString();
//matchDate = DateTime.Today.ToShortDateString();
ApplicationDomainEx.VizEngineModel = new VizEngineModel();
GetSchedule();
InitCommand();
// GetSchedule();
// InitCommand();
InitProperty();
}
private string matchDate;
// private string matchDate;
public string MatchDate
{
get { return matchDate; }
set { matchDate = value; this.RaisePropertyChanged(nameof(MatchDate)); }
// public string MatchDate
// {
// get { return matchDate; }
// set { matchDate = value; this.RaisePropertyChanged(nameof(MatchDate)); }
}
// }
private string matchStatus;
// private string matchStatus;
public string MatchStatus
{
get { return matchStatus; }
set { matchStatus = value;this.RaisePropertyChanged(nameof(MatchStatus)); }
}
// public string MatchStatus
// {
// get { return matchStatus; }
// set { matchStatus = value;this.RaisePropertyChanged(nameof(MatchStatus)); }
// }
private ObservableCollection<string> matchItems;
/// <summary>
/// 下拉框绑定得赛程详细信息
/// </summary>
public ObservableCollection<string> MatchItems
{
get { return matchItems; }
set { matchItems = value; this.RaisePropertyChanged(nameof(MatchItems)); }
}
// private ObservableCollection<string> matchItems;
// /// <summary>
// /// 下拉框绑定得赛程详细信息
// /// </summary>
// public ObservableCollection<string> MatchItems
// {
// get { return matchItems; }
// set { matchItems = value; this.RaisePropertyChanged(nameof(MatchItems)); }
// }
private string selectMatchItems;
/// <summary>
/// 选中得赛程信息
/// </summary>
public string SelectMatchItems
{
get { return selectMatchItems; }
set { selectMatchItems = value; this.RaisePropertyChanged(nameof(SelectMatchItems)); }
}
/// <summary>
/// 球员赛季数据
/// </summary>
public PlayerSeasonData PlayerSeasonData = new PlayerSeasonData();
/// <summary>
/// 队伍赛程信息
/// </summary>
public TeamSeasonData TeamSeasonData = new TeamSeasonData();
//向字典中个人选手增加整个赛季的分数值
public Dictionary<string, Dictionary<string, string>> CNAliasPlayerSportsDictionary
= new Dictionary<string, Dictionary<string, string>>();
/// <summary>
/// 主队球员技术统计数据
/// </summary>
public Dictionary<string, Dictionary<string, string>> MvpHomePlayerCompareNumDictionary
= new Dictionary<string, Dictionary<string, string>>();
/// <summary>
/// 客队球员技术统计数据
/// </summary>
public Dictionary<string, Dictionary<string, string>> MvpVisitPlayerCompareNumDictionary
= new Dictionary<string, Dictionary<string, string>>();
// private string selectMatchItems;
// /// <summary>
// /// 选中得赛程信息
// /// </summary>
// public string SelectMatchItems
// {
// get { return selectMatchItems; }
// set { selectMatchItems = value; this.RaisePropertyChanged(nameof(SelectMatchItems)); }
// }
//创建【球队】数据对比时的字典---主队球员数据与对比项的一一对应【主队-例如:得分--读取接口得分数据】
public Dictionary<string, string> HomeTeamCompareOptionDictionary = new Dictionary<string, string>();
//创建【球队】数据对比时的字典---客队球员数据与对比项的一一对应【客队队-例如:得分--读取接口得分数据】
public Dictionary<string, string> VisitTeamCompareOptionDictionary = new Dictionary<string, string>();
// /// <summary>
// /// 球员赛季数据
// /// </summary>
// public PlayerSeasonData PlayerSeasonData = new PlayerSeasonData();
// /// <summary>
// /// 队伍赛程信息
// /// </summary>
// public TeamSeasonData TeamSeasonData = new TeamSeasonData();
public Dictionary<string, Dictionary<string, string>> CNAliasVisitSportsDictionary
= new Dictionary<string, Dictionary<string, string>>();
//球员赛季数据
public string Matchtypeid = "";
//比赛赛程Id
public string ScheduleID = "";
// //向字典中个人选手增加整个赛季的分数值
// public Dictionary<string, Dictionary<string, string>> CNAliasPlayerSportsDictionary
// = new Dictionary<string, Dictionary<string, string>>();
/// <summary>
/// 设置一个比赛赛程集合
/// </summary>
public Dictionary<string, string> SetMatchDict = new Dictionary<string, string>();
// /// <summary>
// /// 主队球员技术统计数据
// /// </summary>
// public Dictionary<string, Dictionary<string, string>> MvpHomePlayerCompareNumDictionary
//= new Dictionary<string, Dictionary<string, string>>();
VizEngineModel gobalVizEngineModel = new VizEngineModel();
// /// <summary>
// /// 客队球员技术统计数据
// /// </summary>
// public Dictionary<string, Dictionary<string, string>> MvpVisitPlayerCompareNumDictionary
// = new Dictionary<string, Dictionary<string, string>>();
/// <summary>
/// 获取比赛赛程
/// </summary>
public void GetSchedule()
{
MatchItems = new ObservableCollection<string>();
string date = Convert.ToDateTime(matchDate).ToString("yyyy-MM-dd");
var dayschedules = JsonModel.TomorrowMatch_Path(date);
// //创建【球队】数据对比时的字典---主队球员数据与对比项的一一对应【主队-例如:得分--读取接口得分数据】
// public Dictionary<string, string> HomeTeamCompareOptionDictionary = new Dictionary<string, string>();
// //创建【球队】数据对比时的字典---客队球员数据与对比项的一一对应【客队队-例如:得分--读取接口得分数据】
// public Dictionary<string, string> VisitTeamCompareOptionDictionary = new Dictionary<string, string>();
// matchData.AddRange(dayschedules.dayschedule);
//MatchData = new ObservableCollection<Dayschedule>();
if(dayschedules!=null)
{
dayschedules.dayschedule = dayschedules.dayschedule.OrderBy(a => Convert.ToDateTime(a.time)).ToList();
}
// public Dictionary<string, Dictionary<string, string>> CNAliasVisitSportsDictionary
//= new Dictionary<string, Dictionary<string, string>>();
SetMatchDict.Clear();
MatchItems.Clear();
// //球员赛季数据
// public string Matchtypeid = "";
// //比赛赛程Id
// public string ScheduleID = "";
foreach (var dayschedule in dayschedules.dayschedule)
{
if (dayschedule.Status == "1")
{
dayschedule.Status = "未开赛";
}
else if (dayschedule.Status == "2")
{
dayschedule.Status = "进行中";
}
else if (dayschedule.Status == "3")
{
dayschedule.Status = "进行中";
}
else if (dayschedule.Status == "4")
{
dayschedule.Status = "已结束";
}
else if (dayschedule.Status == "5")
{
dayschedule.Status = "延期";
}
// /// <summary>
// /// 设置一个比赛赛程集合
// /// </summary>
// public Dictionary<string, string> SetMatchDict = new Dictionary<string, string>();
if (!SetMatchDict.ContainsKey(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName))
{
SetMatchDict.Add(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName, dayschedule.ScheduleID);
}
// VizEngineModel gobalVizEngineModel = new VizEngineModel();
Matchtypeid = dayschedule.ScheduleTypeID;
// /// <summary>
// /// 获取比赛赛程
// /// </summary>
MatchItems.Add(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName);
// public void GetSchedule()
// {
// MatchItems = new ObservableCollection<string>();
// string date = Convert.ToDateTime(matchDate).ToString("yyyy-MM-dd");
}
// var dayschedules = JsonModel.TomorrowMatch_Path(date);
}
// if (dayschedules == null) return;
// // matchData.AddRange(dayschedules.dayschedule);
// //MatchData = new ObservableCollection<Dayschedule>();
/// <summary>
/// 初始化命令
/// </summary>
private void InitCommand()
{
this.ConnectCommand = new VCommand(this.Connect);
this.DisconnectCommand = new VCommand(this.Disconnect);
}
// //if(dayschedules!=null)
// //{
// dayschedules.dayschedule = dayschedules.dayschedule.OrderBy(a => Convert.ToDateTime(a.time)).ToList();
// //}
// SetMatchDict.Clear();
// MatchItems.Clear();
// foreach (var dayschedule in dayschedules.dayschedule)
// {
// if (dayschedule.Status == "1")
// {
// dayschedule.Status = "未开赛";
// }
// else if (dayschedule.Status == "2")
// {
// dayschedule.Status = "进行中";
// }
// else if (dayschedule.Status == "3")
// {
// dayschedule.Status = "进行中";
// }
// else if (dayschedule.Status == "4")
// {
// dayschedule.Status = "已结束";
// }
// else if (dayschedule.Status == "5")
// {
// dayschedule.Status = "延期";
// }
// if (!SetMatchDict.ContainsKey(dayschedule.time + dayschedule.HomeTeamName
// + "VS" + dayschedule.VisitingTeamName))
// {
// SetMatchDict.Add(dayschedule.time + dayschedule.HomeTeamName
// + "VS" + dayschedule.VisitingTeamName, dayschedule.ScheduleID);
// }
// Matchtypeid = dayschedule.ScheduleTypeID;
// MatchItems.Add(dayschedule.time + dayschedule.HomeTeamName
// + "VS" + dayschedule.VisitingTeamName);
// }
// }
// /// <summary>
// /// 初始化命令
// /// </summary>
// private void InitCommand()
// {
// this.ConnectCommand = new VCommand(this.Connect);
// this.DisconnectCommand = new VCommand(this.Disconnect);
// }
/// <summary>
/// 初始化属性
......
......@@ -19,13 +19,14 @@ using VIZ.TVP.CBA.Module.OnAirData;
using VIZ.TVP.CBA.Module.SeasonData;
using DevExpress.Mvvm.POCO;
using System.ComponentModel;
using log4net;
namespace VIZ.TVP.CBA.Module.PlayerCompare.ViewModel
{
public class PlayerCompareViewModel : ViewModelBase
{
private static ILog Log=LogManager.GetLogger(typeof(PlayerCompareViewModel));
private static PlayerCompareViewModel _createInstance = null;
public static PlayerCompareViewModel CreateInstance
......@@ -51,50 +52,7 @@ namespace VIZ.TVP.CBA.Module.PlayerCompare.ViewModel
};
playerComModels = new ObservableCollection<PlayerComModel>();
//{
// new PlayerComModel()
// {
// //TechStats=TechStats.Goal
// TechStatsName="得分"
// },
// new PlayerComModel()
// {
// // TechStats=TechStats.Rebounds
// TechStatsName="篮板"
// },
// new PlayerComModel()
// {
// // TechStats=TechStats.Assists
// TechStatsName="助攻"
// },
// new PlayerComModel()
// {
// //TechStats=TechStats.Blocks
// TechStatsName="盖帽"
// },
// new PlayerComModel()
// {
// //TechStats=TechStats.Steals
// TechStatsName="抢断"
// },
// new PlayerComModel()
// {
// //TechStats=TechStats.ShootingGoalP
// TechStatsName="投篮命中率"
// },
// new PlayerComModel()
// {
// //TechStats=TechStats.ThreeShootingGoalP
// TechStatsName="三分命中率",
// }
//};
PlayerComModel PlayGoal = new PlayerComModel();
PlayGoal.TechStatsName = "得分";
PlayGoal.PropertyChanged += OnModelChanged;
......@@ -131,19 +89,15 @@ namespace VIZ.TVP.CBA.Module.PlayerCompare.ViewModel
playerComModels.Add(ThreeShootingGoalP);
BtnCommand = new VCommand(BtnCmd);
PlayerComCommand = new VCommand(playerComCommand);
MatchCmd = new VCommand(MatchTechCmd);
matchDate = DateTime.Today.ToShortDateString();
GetSchedule();
GetSeasonData();
//SetPlayer();
}
/// <summary>
......@@ -545,7 +499,7 @@ namespace VIZ.TVP.CBA.Module.PlayerCompare.ViewModel
matchDate = value;
this.RaisePropertyChanged(nameof(MatchDate));
GetSchedule();
GetSeasonData();
......@@ -799,6 +753,7 @@ namespace VIZ.TVP.CBA.Module.PlayerCompare.ViewModel
}
else
{
Log.Info("球员对比上版和数据:"+ CombinePlayerCommand());
ApplicationDomainEx.VizEngineModel.STAGE_START("Default/SQY", "dqyData", CombinePlayerCommand());
// CombinePlayerCommand();
}
......@@ -884,6 +839,7 @@ namespace VIZ.TVP.CBA.Module.PlayerCompare.ViewModel
private void BtnCmd()
{
onAirDataModel = JsonModel.OnAirData_Path(ScheduleID);
if (onAirDataModel == null) return;
SetPlayer(false);
SetAData();
SetHData();
......@@ -896,115 +852,135 @@ namespace VIZ.TVP.CBA.Module.PlayerCompare.ViewModel
}
/// <summary>
/// 获取日期类型
/// 根据日期获取赛程
/// </summary>
private void GetSchedule()
{
MatchItems = new ObservableCollection<string>();
string date = Convert.ToDateTime(matchDate).ToString("yyyy-MM-dd");
try
var dayschedules = JsonModel.TomorrowMatch_Path(date);
{
MatchItems = new ObservableCollection<string>();
string date = Convert.ToDateTime(matchDate).ToString("yyyy-MM-dd");
// matchData.AddRange(dayschedules.dayschedule);
//MatchData = new ObservableCollection<Dayschedule>();
var dayschedules = JsonModel.TomorrowMatch_Path(date);
if (dayschedules != null)
{
if (dayschedules == null) return;
// matchData.AddRange(dayschedules.dayschedule);
//MatchData = new ObservableCollection<Dayschedule>();
//if (dayschedules != null)
//{
dayschedules.dayschedule = dayschedules.dayschedule.OrderBy(a => Convert.ToDateTime(a.time)).ToList();
}
// }
SetMatchDict.Clear();
MatchItems.Clear();
SetMatchDict.Clear();
MatchItems.Clear();
foreach (var dayschedule in dayschedules.dayschedule)
{
if (dayschedule.Status == "1")
{
dayschedule.Status = "未开赛";
}
else if (dayschedule.Status == "2")
{
dayschedule.Status = "进行中";
}
else if (dayschedule.Status == "3")
{
dayschedule.Status = "进行中";
}
else if (dayschedule.Status == "4")
foreach (var dayschedule in dayschedules.dayschedule)
{
dayschedule.Status = "已结束";
}
else if (dayschedule.Status == "5")
{
dayschedule.Status = "延期";
}
if (dayschedule.Status == "1")
{
dayschedule.Status = "未开赛";
}
else if (dayschedule.Status == "2")
{
dayschedule.Status = "进行中";
}
else if (dayschedule.Status == "3")
{
dayschedule.Status = "进行中";
}
else if (dayschedule.Status == "4")
{
dayschedule.Status = "已结束";
}
else if (dayschedule.Status == "5")
{
dayschedule.Status = "延期";
}
if (!SetMatchDict.ContainsKey(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName))
{
SetMatchDict.Add(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName, dayschedule.ScheduleID);
}
if (!SetMatchDict.ContainsKey(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName))
{
SetMatchDict.Add(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName, dayschedule.ScheduleID);
}
Matchtypeid = dayschedule.ScheduleTypeID;
Matchtypeid = dayschedule.ScheduleTypeID;
MatchItems.Add(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName);
MatchItems.Add(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName);
}
}
catch (Exception ex)
{
Log.Error(ex.Message);
}
}
/// <summary>
/// 获得赛季球队数据
/// </summary>
private void GetSeasonData()
{
PlayerSeasonData = JsonModel.PlayerSeasonData_Path(Matchtypeid);
try
TeamSeasonData = JsonModel.TeamSeasonData_Path(Matchtypeid);
{
PlayerSeasonData = JsonModel.PlayerSeasonData_Path(Matchtypeid);
TeamSeasonData = JsonModel.TeamSeasonData_Path(Matchtypeid);
CNAliasPlayerSportsDictionary.Clear();
foreach (var tempSeasonData in PlayerSeasonData.playerstats)
{
Dictionary<string, string> CompareItemToNumber = new Dictionary<string, string>();
CompareItemToNumber.Add("得分", tempSeasonData.PointsAverage);
CompareItemToNumber.Add("篮板", tempSeasonData.ReboundsAverage);
CompareItemToNumber.Add("助攻", tempSeasonData.AssistsAverage);
CompareItemToNumber.Add("抢断", tempSeasonData.StealsAverage);
CompareItemToNumber.Add("盖帽", tempSeasonData.BlockedAverage);
CompareItemToNumber.Add("上场时间", tempSeasonData.MinutesAverage);
CompareItemToNumber.Add("投篮命中率", (tempSeasonData.FieldGoalsPercentageAverage).ToString("F1") + "%");
CompareItemToNumber.Add("两分命中率", (tempSeasonData.TwoPointPercentageAverage).ToString("F1") + "%");
CNAliasPlayerSportsDictionary.Clear();
if (PlayerSeasonData == null) return;
foreach (var tempSeasonData in PlayerSeasonData.playerstats)
{
Dictionary<string, string> CompareItemToNumber = new Dictionary<string, string>();
CompareItemToNumber.Add("三分命中率", (tempSeasonData.ThreePointPercentageAverage).ToString("F1") + "%");
CompareItemToNumber.Add("罚球命中率", (tempSeasonData.FreeThrowsPercentageAverage).ToString("F1") + "%");
CompareItemToNumber.Add("篮下投篮命中率", (tempSeasonData.FieldGoalsAtRimPercentageAverage * 100).ToString("F1") + "%");
CompareItemToNumber.Add("中距离投篮命中率", (tempSeasonData.FieldGoalsMidRangePercentageAverage * 100).ToString("F1") + "%");
CompareItemToNumber.Add("三分", tempSeasonData.ThreePointGoalsAverage + "/"
+ tempSeasonData.ThreePointAttemptedAverage);
CompareItemToNumber.Add("得分", tempSeasonData.PointsAverage);
CompareItemToNumber.Add("篮板", tempSeasonData.ReboundsAverage);
CompareItemToNumber.Add("助攻", tempSeasonData.AssistsAverage);
CompareItemToNumber.Add("抢断", tempSeasonData.StealsAverage);
CompareItemToNumber.Add("盖帽", tempSeasonData.BlockedAverage);
CompareItemToNumber.Add("上场时间", tempSeasonData.MinutesAverage);
CompareItemToNumber.Add("投篮命中率", (tempSeasonData.FieldGoalsPercentageAverage).ToString("F1") + "%");
CompareItemToNumber.Add("两分命中率", (tempSeasonData.TwoPointPercentageAverage).ToString("F1") + "%");
CompareItemToNumber.Add("三分命中率", (tempSeasonData.ThreePointPercentageAverage).ToString("F1") + "%");
CompareItemToNumber.Add("罚球命中率", (tempSeasonData.FreeThrowsPercentageAverage).ToString("F1") + "%");
CompareItemToNumber.Add("篮下投篮命中率", (tempSeasonData.FieldGoalsAtRimPercentageAverage * 100).ToString("F1") + "%");
CompareItemToNumber.Add("中距离投篮命中率", (tempSeasonData.FieldGoalsMidRangePercentageAverage * 100).ToString("F1") + "%");
CompareItemToNumber.Add("三分", tempSeasonData.ThreePointGoalsAverage + "/"
+ tempSeasonData.ThreePointAttemptedAverage);
CompareItemToNumber.Add("两分", tempSeasonData.TwoPointGoalsAverage + "/"
+ tempSeasonData.TwoPointAttemptedAverage);
CompareItemToNumber.Add("两分", tempSeasonData.TwoPointGoalsAverage + "/"
+ tempSeasonData.TwoPointAttemptedAverage);
CompareItemToNumber.Add("两分区", tempSeasonData.TwoPointGoalsAverage + "/"
+ tempSeasonData.TwoPointAttemptedAverage);
CompareItemToNumber.Add("三分区", tempSeasonData.ThreePointGoalsAverage + "/"
+ tempSeasonData.ThreePointAttemptedAverage);
//CompareItemToNumber.Add("ThreeArea",);
CompareItemToNumber.Add("两分区", tempSeasonData.TwoPointGoalsAverage + "/"
+ tempSeasonData.TwoPointAttemptedAverage);
CompareItemToNumber.Add("三分区", tempSeasonData.ThreePointGoalsAverage + "/"
CompareItemToNumber.Add("罚球", tempSeasonData.FreeThrowsAverage + "/"
+ tempSeasonData.FreeThrowsAttemptedAverage);
CompareItemToNumber.Add("失误", tempSeasonData.TurnoversAverage);
+ tempSeasonData.ThreePointAttemptedAverage);
//CompareItemToNumber.Add("ThreeArea",);
if (!CNAliasPlayerSportsDictionary.ContainsKey(tempSeasonData.CNAlias))
{
CNAliasPlayerSportsDictionary.Add(tempSeasonData.CNAlias, CompareItemToNumber);
}
CompareItemToNumber.Add("罚球", tempSeasonData.FreeThrowsAverage + "/"
+ tempSeasonData.FreeThrowsAttemptedAverage);
CompareItemToNumber.Add("失误", tempSeasonData.TurnoversAverage);
if (!CNAliasPlayerSportsDictionary.ContainsKey(tempSeasonData.CNAlias))
{
CNAliasPlayerSportsDictionary.Add(tempSeasonData.CNAlias, CompareItemToNumber);
}
}
}
catch(Exception ex)
{
Log.Error(ex.Message);
}
}
......@@ -1015,6 +991,8 @@ namespace VIZ.TVP.CBA.Module.PlayerCompare.ViewModel
if (SelectMatchItems == null) return;
ScheduleID = SetMatchDict[SelectMatchItems];
onAirDataModel = JsonModel.OnAirData_Path(ScheduleID);
if (onAirDataModel == null) return;
if (onAirDataModel != null)
{
......
......@@ -10,12 +10,18 @@ using VIZ.TVP.CBA.Module.DayMatch.Model;
using VIZ.TVP.CBA.Module.RoundMatch.Model;
using VIZ.TVP.CBA.Module.TempEnum;
using VIZ.TVP.CBA.Domain;
using log4net;
namespace VIZ.TVP.CBA.Module.RoundMatch.ViewModel
{
public class RoundMatchViewModel: ViewModelBase
{
/// <summary>
/// 日志
/// </summary>
private static ILog Log=LogManager.GetLogger(typeof(RoundMatchViewModel));
public RoundMatchViewModel()
{
RoundMatchs = new ObservableCollection<int>();
......@@ -153,7 +159,7 @@ namespace VIZ.TVP.CBA.Module.RoundMatch.ViewModel
private void BtnCmdDataUp()
{
Log.Info("轮次比赛上版信息和数据:" + CombineMatchData());
ApplicationDomainEx.VizEngineModel.STAGE_START("Default/JRSCBEN", "Data", CombineMatchData());
}
......@@ -209,6 +215,8 @@ namespace VIZ.TVP.CBA.Module.RoundMatch.ViewModel
public void BtnCommand()
{
var roundSchedules = JsonModel.GetGameRound_Path(roundMatchItem.ToString());
if (roundSchedules == null) return;
RoundMatchData = new ObservableCollection<RoundSchedule>();
foreach(var rudData in roundSchedules.schedulelist)
......
......@@ -17,12 +17,15 @@ using VIZ.TVP.CBA.Module.SeasonData;
using VIZ.TVP.CBA.Module.OnAirData;
using VIZ.TVP.CBA.Module.PlayerCompare.Model;
using System.ComponentModel;
using log4net;
namespace VIZ.TVP.CBA.Module.SinglePlayer.ViewModel
{
public class SinglePlayerViewModel: ViewModelBase
{
private static ILog Log= LogManager.GetLogger(typeof(SinglePlayerViewModel));
private static SinglePlayerViewModel _createInstance = null;
public static SinglePlayerViewModel CreateInstance
......@@ -38,7 +41,6 @@ namespace VIZ.TVP.CBA.Module.SinglePlayer.ViewModel
}
public SinglePlayerViewModel()
{
......@@ -191,9 +193,6 @@ namespace VIZ.TVP.CBA.Module.SinglePlayer.ViewModel
}
}
private ObservableCollection<int> matchStatsIds;
public ObservableCollection<int> MatchStatsIds
......@@ -808,7 +807,9 @@ namespace VIZ.TVP.CBA.Module.SinglePlayer.ViewModel
SetData();
}
/// <summary>
/// 单个球员数据
/// </summary>
private void singleCommand()
{
if(matchStatsId==null)
......@@ -822,11 +823,15 @@ namespace VIZ.TVP.CBA.Module.SinglePlayer.ViewModel
}
else
{
Log.Info("单人球员数据:"+ CombineSingleData());
ApplicationDomainEx.VizEngineModel.STAGE_START("Default/DQY", "dqyData", CombineSingleData());
}
}
/// <summary>
/// mvp球员数据
/// </summary>
private void mvpCommand()
{
if (matchStatsId == null)
......@@ -840,17 +845,17 @@ namespace VIZ.TVP.CBA.Module.SinglePlayer.ViewModel
}
else
{
Log.Info("MVP球员数据:"+ CombineSingleData());
ApplicationDomainEx.VizEngineModel.STAGE_START("Default/DQY", "dqyData", CombineSingleData());
}
}
private ObservableCollection<string> matchItems;
/// <summary>
/// 下拉框绑定得赛程详细信息
/// </summary>
private ObservableCollection<string> matchItems;
public ObservableCollection<string> MatchItems
{
get { return matchItems; }
......@@ -858,12 +863,12 @@ namespace VIZ.TVP.CBA.Module.SinglePlayer.ViewModel
}
private string selectMatchItems;
/// <summary>
/// 选中得赛程信息
/// </summary>
private string selectMatchItems;
public string SelectMatchItems
{
get { return selectMatchItems; }
......@@ -875,6 +880,9 @@ namespace VIZ.TVP.CBA.Module.SinglePlayer.ViewModel
}
}
/// <summary>
///比赛状态
/// </summary>
private string matchStatus;
public string MatchStatus
......@@ -912,12 +920,15 @@ namespace VIZ.TVP.CBA.Module.SinglePlayer.ViewModel
public Dictionary<string, string> SetMatchDict = new Dictionary<string, string>();
/// <summary>
/// 设置单个球员相关的信息
/// </summary>
private void SetSingleData()
{
if (SelectMatchItems == null) return;
ScheduleID = SetMatchDict[SelectMatchItems];
onAirDataModel = JsonModel.OnAirData_Path(ScheduleID);
if (onAirDataModel == null) return;
if (onAirDataModel != null)
{
......@@ -972,57 +983,66 @@ namespace VIZ.TVP.CBA.Module.SinglePlayer.ViewModel
private void GetSchedule()
{
MatchItems = new ObservableCollection<string>();
string date = Convert.ToDateTime(matchDate).ToString("yyyy-MM-dd");
try
{
MatchItems = new ObservableCollection<string>();
string date = Convert.ToDateTime(matchDate).ToString("yyyy-MM-dd");
var dayschedules = JsonModel.TomorrowMatch_Path(date);
var dayschedules = JsonModel.TomorrowMatch_Path(date);
// matchData.AddRange(dayschedules.dayschedule);
//MatchData = new ObservableCollection<Dayschedule>();
if (dayschedules == null) return;
if (dayschedules != null)
{
// matchData.AddRange(dayschedules.dayschedule);
//MatchData = new ObservableCollection<Dayschedule>();
//if (dayschedules != null)
//{
dayschedules.dayschedule = dayschedules.dayschedule.OrderBy(a => Convert.ToDateTime(a.time)).ToList();
}
//}
SetMatchDict.Clear();
MatchItems.Clear();
SetMatchDict.Clear();
MatchItems.Clear();
foreach (var dayschedule in dayschedules.dayschedule)
{
if (dayschedule.Status == "1")
{
dayschedule.Status = "未开赛";
}
else if (dayschedule.Status == "2")
{
dayschedule.Status = "进行中";
}
else if (dayschedule.Status == "3")
{
dayschedule.Status = "进行中";
}
else if (dayschedule.Status == "4")
{
dayschedule.Status = "已结束";
}
else if (dayschedule.Status == "5")
foreach (var dayschedule in dayschedules.dayschedule)
{
dayschedule.Status = "延期";
}
if (dayschedule.Status == "1")
{
dayschedule.Status = "未开赛";
}
else if (dayschedule.Status == "2")
{
dayschedule.Status = "进行中";
}
else if (dayschedule.Status == "3")
{
dayschedule.Status = "进行中";
}
else if (dayschedule.Status == "4")
{
dayschedule.Status = "已结束";
}
else if (dayschedule.Status == "5")
{
dayschedule.Status = "延期";
}
if (!SetMatchDict.ContainsKey(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName))
{
SetMatchDict.Add(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName, dayschedule.ScheduleID);
}
if (!SetMatchDict.ContainsKey(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName))
{
SetMatchDict.Add(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName, dayschedule.ScheduleID);
}
Matchtypeid = dayschedule.ScheduleTypeID;
Matchtypeid = dayschedule.ScheduleTypeID;
MatchItems.Add(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName);
MatchItems.Add(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName);
}
}
catch(Exception ex)
{
Log.Error(ex.Message);
}
}
......@@ -1032,60 +1052,72 @@ namespace VIZ.TVP.CBA.Module.SinglePlayer.ViewModel
/// <summary>
/// 获得赛季数据
/// </summary>
private void GetSeasonData()
{
PlayerSeasonData = JsonModel.PlayerSeasonData_Path(Matchtypeid);
try
{
PlayerSeasonData = JsonModel.PlayerSeasonData_Path(Matchtypeid);
TeamSeasonData = JsonModel.TeamSeasonData_Path(Matchtypeid);
TeamSeasonData = JsonModel.TeamSeasonData_Path(Matchtypeid);
if (PlayerSeasonData == null) return;
CNAliasPlayerSportsDictionary.Clear();
foreach (var tempSeasonData in PlayerSeasonData.playerstats)
{
Dictionary<string, string> CompareItemToNumber = new Dictionary<string, string>();
CNAliasPlayerSportsDictionary.Clear();
foreach (var tempSeasonData in PlayerSeasonData.playerstats)
{
Dictionary<string, string> CompareItemToNumber = new Dictionary<string, string>();
CompareItemToNumber.Add("得分", tempSeasonData.PointsAverage);
CompareItemToNumber.Add("篮板", tempSeasonData.ReboundsAverage);
CompareItemToNumber.Add("助攻", tempSeasonData.AssistsAverage);
CompareItemToNumber.Add("抢断", tempSeasonData.StealsAverage);
CompareItemToNumber.Add("盖帽", tempSeasonData.BlockedAverage);
CompareItemToNumber.Add("上场时间", tempSeasonData.MinutesAverage);
CompareItemToNumber.Add("投篮命中率", (tempSeasonData.FieldGoalsPercentageAverage).ToString("F1") + "%");
CompareItemToNumber.Add("两分命中率", (tempSeasonData.TwoPointPercentageAverage).ToString("F1") + "%");
CompareItemToNumber.Add("得分", tempSeasonData.PointsAverage);
CompareItemToNumber.Add("篮板", tempSeasonData.ReboundsAverage);
CompareItemToNumber.Add("助攻", tempSeasonData.AssistsAverage);
CompareItemToNumber.Add("抢断", tempSeasonData.StealsAverage);
CompareItemToNumber.Add("盖帽", tempSeasonData.BlockedAverage);
CompareItemToNumber.Add("上场时间", tempSeasonData.MinutesAverage);
CompareItemToNumber.Add("投篮命中率", (tempSeasonData.FieldGoalsPercentageAverage).ToString("F1") + "%");
CompareItemToNumber.Add("两分命中率", (tempSeasonData.TwoPointPercentageAverage).ToString("F1") + "%");
CompareItemToNumber.Add("三分命中率", (tempSeasonData.ThreePointPercentageAverage).ToString("F1") + "%");
CompareItemToNumber.Add("罚球命中率", (tempSeasonData.FreeThrowsPercentageAverage).ToString("F1") + "%");
CompareItemToNumber.Add("篮下投篮命中率", (tempSeasonData.FieldGoalsAtRimPercentageAverage * 100).ToString("F1") + "%");
CompareItemToNumber.Add("中距离投篮命中率", (tempSeasonData.FieldGoalsMidRangePercentageAverage * 100).ToString("F1") + "%");
CompareItemToNumber.Add("三分", tempSeasonData.ThreePointGoalsAverage + "/"
+ tempSeasonData.ThreePointAttemptedAverage);
CompareItemToNumber.Add("三分命中率", (tempSeasonData.ThreePointPercentageAverage).ToString("F1") + "%");
CompareItemToNumber.Add("罚球命中率", (tempSeasonData.FreeThrowsPercentageAverage).ToString("F1") + "%");
CompareItemToNumber.Add("篮下投篮命中率", (tempSeasonData.FieldGoalsAtRimPercentageAverage * 100).ToString("F1") + "%");
CompareItemToNumber.Add("中距离投篮命中率", (tempSeasonData.FieldGoalsMidRangePercentageAverage * 100).ToString("F1") + "%");
CompareItemToNumber.Add("三分", tempSeasonData.ThreePointGoalsAverage + "/"
+ tempSeasonData.ThreePointAttemptedAverage);
CompareItemToNumber.Add("两分", tempSeasonData.TwoPointGoalsAverage + "/"
+ tempSeasonData.TwoPointAttemptedAverage);
CompareItemToNumber.Add("两分", tempSeasonData.TwoPointGoalsAverage + "/"
+ tempSeasonData.TwoPointAttemptedAverage);
CompareItemToNumber.Add("两分区", tempSeasonData.TwoPointGoalsAverage + "/"
+ tempSeasonData.TwoPointAttemptedAverage);
CompareItemToNumber.Add("三分区", tempSeasonData.ThreePointGoalsAverage + "/"
CompareItemToNumber.Add("两分区", tempSeasonData.TwoPointGoalsAverage + "/"
+ tempSeasonData.TwoPointAttemptedAverage);
CompareItemToNumber.Add("三分区", tempSeasonData.ThreePointGoalsAverage + "/"
+ tempSeasonData.ThreePointAttemptedAverage);
//CompareItemToNumber.Add("ThreeArea",);
+ tempSeasonData.ThreePointAttemptedAverage);
//CompareItemToNumber.Add("ThreeArea",);
CompareItemToNumber.Add("罚球", tempSeasonData.FreeThrowsAverage + "/"
+ tempSeasonData.FreeThrowsAttemptedAverage);
CompareItemToNumber.Add("失误", tempSeasonData.TurnoversAverage);
CompareItemToNumber.Add("罚球", tempSeasonData.FreeThrowsAverage + "/"
+ tempSeasonData.FreeThrowsAttemptedAverage);
CompareItemToNumber.Add("失误", tempSeasonData.TurnoversAverage);
if (!CNAliasPlayerSportsDictionary.ContainsKey(tempSeasonData.CNAlias))
{
CNAliasPlayerSportsDictionary.Add(tempSeasonData.CNAlias, CompareItemToNumber);
}
if (!CNAliasPlayerSportsDictionary.ContainsKey(tempSeasonData.CNAlias))
{
CNAliasPlayerSportsDictionary.Add(tempSeasonData.CNAlias, CompareItemToNumber);
}
}
catch(Exception ex)
{
Log.Error(ex.Message);
}
}
/// <summary>
/// 组装数据
/// </summary>
/// <returns></returns>
private string CombineSingleData()
{
string data = "";
......@@ -1113,18 +1145,23 @@ namespace VIZ.TVP.CBA.Module.SinglePlayer.ViewModel
return data;
}
/// <summary>
/// 上MVP球员数据
/// </summary>
/// <returns></returns>
private string CombineMVPData()
{
string data = "";
return data;
}
/// <summary>
/// 刷新数据
/// </summary>
private void BtnCommand()
{
onAirDataModel = JsonModel.OnAirData_Path(ScheduleID);
if (onAirDataModel == null) return;
MvpHomePlayerCompareNumDictionary.Clear();
MvpVisitPlayerCompareNumDictionary.Clear();
// PlayerItems = new System.Collections.ObjectModel.ObservableCollection<string>();
......@@ -1245,7 +1282,9 @@ namespace VIZ.TVP.CBA.Module.SinglePlayer.ViewModel
}
/// <summary>
/// 设置数据得分
/// </summary>
private void SetData()
{
......
......@@ -9,13 +9,20 @@ using VIZ.TVP.CBA.Module.Common;
using VIZ.TVP.CBA.Module.DayMatch.Model;
using VIZ.TVP.CBA.Module.TeamStandings.Model;
using VIZ.TVP.CBA.Domain;
using log4net;
namespace VIZ.TVP.CBA.Module.TeamStandings.ViewModel
{
public class TeamStandingViewModel: ViewModelBase
{
/// <summary>
/// 日志
/// </summary>
private static ILog Log= LogManager.GetLogger(typeof(TeamStandingViewModel));
/// <summary>
/// 球队排名初始化排名
/// </summary>
public TeamStandingViewModel()
{
//TeamRanksModel = new ObservableCollection<Model.Teamrank>()
......@@ -143,7 +150,7 @@ namespace VIZ.TVP.CBA.Module.TeamStandings.ViewModel
private void BtmCommand()
{
var teamStands = JsonModel.TeamScoreData_Path();
if (teamStands == null) return;
TeamRanksModel = new ObservableCollection<Teamrank>();
int i = 1;
foreach(var teamRank in teamStands.teamrank)
......@@ -174,6 +181,7 @@ namespace VIZ.TVP.CBA.Module.TeamStandings.ViewModel
{
if(TeamRanksModel!=null)
{
Log.Info("球队排名上版信息和数据:"+ CombineTeamStandingData());
ApplicationDomainEx.VizEngineModel.STAGE_START("Default/JFB", "Data", CombineTeamStandingData());
}
}
......
......@@ -10,15 +10,18 @@ using VIZ.TVP.CBA.Module.TempEnum;
namespace VIZ.TVP.CBA.Module.TeamStats.Model
{
/// <summary>
/// 技术统计类
/// </summary>
public class MatchStatsNumbers:ViewModelBase
{
// public string HomeName { get; set; }
/// <summary>
/// 主队得分
/// </summary>
private string homeScore;
public string HomeScore
......@@ -28,7 +31,9 @@ namespace VIZ.TVP.CBA.Module.TeamStats.Model
set { homeScore = value; this.RaisePropertiesChanged(nameof(HomeScore)); }
}
/// <summary>
/// 主队赛季得分
/// </summary>
private string hSeasonScore;
public string HSeasonScore
{
......@@ -40,7 +45,9 @@ namespace VIZ.TVP.CBA.Module.TeamStats.Model
//public string AwayName { get; set; }
/// <summary>
/// 客场得分
/// </summary>
private string awayScore;
public string AwayScore
{
......@@ -49,7 +56,9 @@ namespace VIZ.TVP.CBA.Module.TeamStats.Model
}
/// <summary>
/// 客场赛季得分
/// </summary>
private string aSeasonScore;
public string ASeasonScore
{
......@@ -68,7 +77,9 @@ namespace VIZ.TVP.CBA.Module.TeamStats.Model
set { light = value; this.RaisePropertiesChanged(nameof(Light)); }
}
/// <summary>
/// 技术统计
/// </summary>
private TechStats techStats = TechStats.Goal;
......@@ -78,7 +89,9 @@ namespace VIZ.TVP.CBA.Module.TeamStats.Model
set { techStats = value; this.RaisePropertiesChanged(nameof(TechStats)); }
}
/// <summary>
/// 选中行是否高亮
/// </summary>
private string selectLight = "不高亮";
public string SelectLight
{
......@@ -86,7 +99,9 @@ namespace VIZ.TVP.CBA.Module.TeamStats.Model
set { selectLight = value; this.RaisePropertyChanged(nameof(SelectLight)); }
}
/// <summary>
/// 技术统计名称
/// </summary>
private string techStatsName;
public string TechStatsName
{
......
......@@ -15,12 +15,15 @@ using VIZ.TVP.CBA.Domain;
using VIZ.TVP.CBA.Module.SeasonData;
using VIZ.TVP.CBA.Module.OnAirData;
using System.ComponentModel;
using log4net;
namespace VIZ.TVP.CBA.Module.TeamStats.ViewModel
{
public class TeamStatsViewModel : ViewModelBase
{
private static ILog Log=LogManager.GetLogger(typeof(TeamStatsViewModel));
private static TeamStatsViewModel _createInstance = null;
public static TeamStatsViewModel CreateInstance
......@@ -35,8 +38,6 @@ namespace VIZ.TVP.CBA.Module.TeamStats.ViewModel
}
}
public TeamStatsViewModel()
{
BtnCommand = new VCommand(BtnCmd);
......@@ -233,10 +234,14 @@ namespace VIZ.TVP.CBA.Module.TeamStats.ViewModel
/// </summary>
public TeamSeasonData TeamSeasonData = new TeamSeasonData();
/// <summary>
/// 实时直播数据
/// </summary>
public OnAirDataModel onAirDataModel = new OnAirDataModel();
/// <summary>
/// 技术统计项
/// </summary>
private string matchStatsId;
public string MatchStatsId
......@@ -446,6 +451,8 @@ namespace VIZ.TVP.CBA.Module.TeamStats.ViewModel
{
//CombineTeamComData();
Log.Info("球队对比数据:"+CombineTeamComData());
ApplicationDomainEx.VizEngineModel.STAGE_START("Default/SQD", "dqyData", CombineTeamComData());
}
......@@ -522,7 +529,7 @@ namespace VIZ.TVP.CBA.Module.TeamStats.ViewModel
private void BtnCmd()
{
onAirDataModel = JsonModel.OnAirData_Path(ScheduleID);
if (onAirDataModel == null) return;
Utils.SetHomeTeamDictionary(this);
Utils.SetVisitTeamDictionary(this);
Utils.SetHData(this);
......@@ -537,6 +544,7 @@ namespace VIZ.TVP.CBA.Module.TeamStats.ViewModel
ScheduleID = SetMatchDict[SelectMatchItems];
onAirDataModel = JsonModel.OnAirData_Path(ScheduleID);
if (onAirDataModel == null) return;
if (onAirDataModel != null)
{
......@@ -564,6 +572,7 @@ namespace VIZ.TVP.CBA.Module.TeamStats.ViewModel
AwayTeam = onAirDataModel.liveTeamInfo.VisitingTeamCNAlias;
TeamSeasonData = JsonModel.TeamSeasonData_Path(Matchtypeid);
SetTeamSeasonDictionary();
Utils.SetHomeTeamDictionary(this);
......@@ -574,12 +583,13 @@ namespace VIZ.TVP.CBA.Module.TeamStats.ViewModel
}
/// <summary>
/// 设置球队赛季数据字典集合
/// </summary>
private void SetTeamSeasonDictionary()
{
CNAliasVisitSportsDictionary.Clear();
if (TeamSeasonData == null) return;
foreach (var teamSeasonData in TeamSeasonData.teamstats)
{
......@@ -618,57 +628,66 @@ namespace VIZ.TVP.CBA.Module.TeamStats.ViewModel
private void GetSchedule()
{
MatchItems = new ObservableCollection<string>();
string date = Convert.ToDateTime(matchDate).ToString("yyyy-MM-dd");
var dayschedules = JsonModel.TomorrowMatch_Path(date);
// matchData.AddRange(dayschedules.dayschedule);
//MatchData = new ObservableCollection<Dayschedule>();
try
if (dayschedules != null)
{
dayschedules.dayschedule = dayschedules.dayschedule.OrderBy(a => Convert.ToDateTime(a.time)).ToList();
}
MatchItems = new ObservableCollection<string>();
string date = Convert.ToDateTime(matchDate).ToString("yyyy-MM-dd");
SetMatchDict.Clear();
MatchItems.Clear();
var dayschedules = JsonModel.TomorrowMatch_Path(date);
foreach (var dayschedule in dayschedules.dayschedule)
{
if (dayschedule.Status == "1")
{
dayschedule.Status = "未开赛";
}
else if (dayschedule.Status == "2")
{
dayschedule.Status = "进行中";
}
else if (dayschedule.Status == "3")
{
dayschedule.Status = "进行中";
}
else if (dayschedule.Status == "4")
{
dayschedule.Status = "已结束";
}
else if (dayschedule.Status == "5")
{
dayschedule.Status = "延期";
}
if (!SetMatchDict.ContainsKey(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName))
{
SetMatchDict.Add(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName, dayschedule.ScheduleID);
}
Matchtypeid = dayschedule.ScheduleTypeID;
if (dayschedules == null) return;
// matchData.AddRange(dayschedules.dayschedule);
//MatchData = new ObservableCollection<Dayschedule>();
MatchItems.Add(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName);
//if (dayschedules != null)
//{
dayschedules.dayschedule = dayschedules.dayschedule.OrderBy(a => Convert.ToDateTime(a.time)).ToList();
// }
SetMatchDict.Clear();
MatchItems.Clear();
foreach (var dayschedule in dayschedules.dayschedule)
{
if (dayschedule.Status == "1")
{
dayschedule.Status = "未开赛";
}
else if (dayschedule.Status == "2")
{
dayschedule.Status = "进行中";
}
else if (dayschedule.Status == "3")
{
dayschedule.Status = "进行中";
}
else if (dayschedule.Status == "4")
{
dayschedule.Status = "已结束";
}
else if (dayschedule.Status == "5")
{
dayschedule.Status = "延期";
}
if (!SetMatchDict.ContainsKey(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName))
{
SetMatchDict.Add(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName, dayschedule.ScheduleID);
}
Matchtypeid = dayschedule.ScheduleTypeID;
MatchItems.Add(dayschedule.time + dayschedule.HomeTeamName
+ "VS" + dayschedule.VisitingTeamName);
}
}
catch(Exception ex)
{
Log.Error(ex.Message);
}
}
......
......@@ -95,6 +95,7 @@
<Reference Include="System" />
<Reference Include="System.Configuration" />
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Web" />
<Reference Include="System.Web.Extensions" />
<Reference Include="System.Xml" />
......
......@@ -12,5 +12,11 @@ namespace VIZ.MIGU.CBA
/// </summary>
public partial class App : Application
{
public App()
{
string configPath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "log.config");
log4net.Config.XmlConfigurator.Configure(new System.IO.FileInfo(configPath));
}
}
}
......@@ -61,8 +61,13 @@
<Reference Include="DevExpress.Xpf.Core.v22.1" />
<Reference Include="DevExpress.Xpf.Themes.Office2019Colorful.v22.1" />
<Reference Include="DevExpress.Drawing.v22.1" />
<Reference Include="log4net, Version=2.0.14.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
<HintPath>..\packages\log4net.2.0.14\lib\net45\log4net.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Configuration" />
<Reference Include="System.Data" />
<Reference Include="System.Web" />
<Reference Include="System.Xml" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Core" />
......@@ -114,6 +119,10 @@
<None Include="App.config">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="log.config">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="packages.config" />
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
......
<?xml version="1.0" encoding="utf-8" ?>
<log4net>
<appender name="errorAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="ERROR" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\err.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="infoAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\info.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="debugAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="DEBUG" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\debug.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="perfAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\perf.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %logger - %message%newline" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="errorAppender" />
<appender-ref ref="infoAppender" />
<appender-ref ref="debugAppender" />
</root>
<logger name="Performance" additivity="false">
<level value="ALL" />
<appender-ref ref="perfAppender" />
</logger>
</log4net>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="log4net" version="2.0.14" targetFramework="net48" />
</packages>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment