提交记录修改UI/Controls/Charts/Charts.cs+1 −0看文件
修改UI/Models/ChartPageModel.cs+6 −0看文件
修改UI/ViewModels/ChartPageVM.cs+136 −117看文件
修改UI/Views/ChartPage.xaml+1 −1看文件
| @@ -1215,6 +1215,7 @@ namespace UI.Controls.Charts | ||
| 1215 | 1215 | if (Data.Count() <= 2) |
| 1216 | 1216 | { |
| 1217 | 1217 | RadarContainer.Child = new EmptyData(); |
| 1218 | 新增: isRendering = false; | |
| 1218 | 1219 | return; |
| 1219 | 1220 | } |
| 1220 | 1221 | // 最大值 |
| @@ -123,5 +123,11 @@ namespace UI.Models | ||
| 123 | 123 | /// 图表数据模式(1=分类/2=汇总) |
| 124 | 124 | /// </summary> |
| 125 | 125 | public SelectItemModel ChartDataMode { get { return ChartDataMode_; } set { ChartDataMode_ = value; OnPropertyChanged(); } } |
| 126 | 新增: | |
| 127 | 新增: private List<ChartsDataModel> RadarData_; | |
| 128 | 新增: /// <summary> | |
| 129 | 新增: /// 雷达图数据 | |
| 130 | 新增: /// </summary> | |
| 131 | 新增: public List<ChartsDataModel> RadarData { get { return RadarData_; } set { RadarData_ = value; OnPropertyChanged(); } } | |
| 126 | 132 | } |
| 127 | 133 | } |
| @@ -198,41 +198,43 @@ namespace UI.ViewModels | ||
| 198 | 198 | { |
| 199 | 199 | |
| 200 | 200 | var chartData = new List<ChartsDataModel>(); |
| 201 | 新增: var sumData = new List<ChartsDataModel>(); | |
| 201 | 202 | |
| 202 | 删除: if (ChartDataMode.Id == 1) | |
| 203 | 新增: var list = data.GetCategoryHoursData(Date); | |
| 204 | 新增: var nullCategory = new CategoryModel() | |
| 205 | 新增: { | |
| 206 | 新增: ID = 0, | |
| 207 | 新增: Name = "未分类", | |
| 208 | 新增: IconFile = "pack://application:,,,/Tai;component/Resources/Icons/tai32.ico" | |
| 209 | 新增: }; | |
| 210 | 新增: foreach (var item in list) | |
| 203 | 211 | { |
| 204 | 删除: var list = data.GetCategoryHoursData(Date); | |
| 205 | 删除: var nullCategory = new CategoryModel() | |
| 212 | 新增: var category = categorys.GetCategory(item.CategoryID); | |
| 213 | 新增: if (item.CategoryID == 0) | |
| 206 | 214 | { |
| 207 | 删除: ID = 0, | |
| 208 | 删除: Name = "未分类", | |
| 209 | 删除: IconFile = "pack://application:,,,/Tai;component/Resources/Icons/tai32.ico" | |
| 210 | 删除: }; | |
| 211 | 删除: foreach (var item in list) | |
| 215 | 新增: category = nullCategory; | |
| 216 | 新增: } | |
| 217 | 新增: if (category != null) | |
| 212 | 218 | { |
| 213 | 删除: var category = categorys.GetCategory(item.CategoryID); | |
| 214 | 删除: if (item.CategoryID == 0) | |
| 219 | 新增: var dataItem = new ChartsDataModel() | |
| 215 | 220 | { |
| 216 | 删除: category = nullCategory; | |
| 217 | 删除: } | |
| 218 | 删除: if (category != null) | |
| 221 | 新增: | |
| 222 | 新增: Name = category.Name, | |
| 223 | 新增: Icon = category.IconFile, | |
| 224 | 新增: Values = item.Values, | |
| 225 | 新增: Color = category.Color | |
| 226 | 新增: }; | |
| 227 | 新增: if (category.ID == 0) | |
| 219 | 228 | { |
| 220 | 删除: var dataItem = new ChartsDataModel() | |
| 221 | 删除: { | |
| 222 | 删除: | |
| 223 | 删除: Name = category.Name, | |
| 224 | 删除: Icon = category.IconFile, | |
| 225 | 删除: Values = item.Values, | |
| 226 | 删除: Color = category.Color | |
| 227 | 删除: }; | |
| 228 | 删除: if (category.ID == 0) | |
| 229 | 删除: { | |
| 230 | 删除: dataItem.Color = "#E5F7F6F2"; | |
| 231 | 删除: } | |
| 232 | 删除: chartData.Add(dataItem); | |
| 229 | 新增: dataItem.Color = "#E5F7F6F2"; | |
| 233 | 230 | } |
| 231 | 新增: chartData.Add(dataItem); | |
| 234 | 232 | } |
| 235 | 233 | } |
| 234 | 新增: if (ChartDataMode.Id == 1) | |
| 235 | 新增: { | |
| 236 | 新增: Data = chartData; | |
| 237 | 新增: } | |
| 236 | 238 | else |
| 237 | 239 | { |
| 238 | 240 | // 汇总 |
| @@ -244,10 +246,12 @@ namespace UI.ViewModels | ||
| 244 | 246 | Values = values, |
| 245 | 247 | }; |
| 246 | 248 | |
| 247 | 删除: chartData.Add(dataItem); | |
| 249 | 新增: sumData.Add(dataItem); | |
| 250 | 新增: Data = sumData; | |
| 248 | 251 | } |
| 249 | 252 | |
| 250 | 删除: Data = chartData; | |
| 253 | 新增: RadarData = chartData; | |
| 254 | 新增: | |
| 251 | 255 | double totalUse = Data.Sum(m => m.Values.Sum()); |
| 252 | 256 | TotalHours = Time.ToHoursString(totalUse); |
| 253 | 257 | LoadTopData(); |
| @@ -267,44 +271,47 @@ namespace UI.ViewModels | ||
| 267 | 271 | WeekDateStr = weekDateArr[0].ToString("yyyy年MM月dd日") + " 到 " + weekDateArr[1].ToString("yyyy年MM月dd日"); |
| 268 | 272 | string[] weekNames = { "周一", "周二", "周三", "周四", "周五", "周六", "周日", }; |
| 269 | 273 | var chartData = new List<ChartsDataModel>(); |
| 274 | 新增: var sumData = new List<ChartsDataModel>(); | |
| 270 | 275 | |
| 271 | 删除: if (ChartDataMode.Id == 1) | |
| 276 | 新增: var list = data.GetCategoryRangeData(weekDateArr[0], weekDateArr[1]); | |
| 277 | 新增: var nullCategory = new CategoryModel() | |
| 272 | 278 | { |
| 273 | 删除: var list = data.GetCategoryRangeData(weekDateArr[0], weekDateArr[1]); | |
| 274 | 删除: var nullCategory = new CategoryModel() | |
| 275 | 删除: { | |
| 276 | 删除: ID = 0, | |
| 277 | 删除: Name = "未分类", | |
| 278 | 删除: IconFile = "pack://application:,,,/Tai;component/Resources/Icons/tai32.ico" | |
| 279 | 新增: ID = 0, | |
| 280 | 新增: Name = "未分类", | |
| 281 | 新增: IconFile = "pack://application:,,,/Tai;component/Resources/Icons/tai32.ico" | |
| 279 | 282 | |
| 280 | 删除: }; | |
| 283 | 新增: }; | |
| 281 | 284 | |
| 282 | 删除: foreach (var item in list) | |
| 285 | 新增: foreach (var item in list) | |
| 286 | 新增: { | |
| 287 | 新增: var category = categorys.GetCategory(item.CategoryID); | |
| 288 | 新增: if (item.CategoryID == 0) | |
| 289 | 新增: { | |
| 290 | 新增: category = nullCategory; | |
| 291 | 新增: } | |
| 292 | 新增: if (category != null) | |
| 283 | 293 | { |
| 284 | 删除: var category = categorys.GetCategory(item.CategoryID); | |
| 285 | 删除: if (item.CategoryID == 0) | |
| 294 | 新增: var dataItem = new ChartsDataModel() | |
| 286 | 295 | { |
| 287 | 删除: category = nullCategory; | |
| 288 | 删除: } | |
| 289 | 删除: if (category != null) | |
| 296 | 新增: | |
| 297 | 新增: Name = category.Name, | |
| 298 | 新增: Icon = category.IconFile, | |
| 299 | 新增: Values = item.Values, | |
| 300 | 新增: ColumnNames = weekNames, | |
| 301 | 新增: Color = category.Color, | |
| 302 | 新增: }; | |
| 303 | 新增: if (category.ID == 0) | |
| 290 | 304 | { |
| 291 | 删除: var dataItem = new ChartsDataModel() | |
| 292 | 删除: { | |
| 293 | 删除: | |
| 294 | 删除: Name = category.Name, | |
| 295 | 删除: Icon = category.IconFile, | |
| 296 | 删除: Values = item.Values, | |
| 297 | 删除: ColumnNames = weekNames, | |
| 298 | 删除: Color = category.Color, | |
| 299 | 删除: }; | |
| 300 | 删除: if (category.ID == 0) | |
| 301 | 删除: { | |
| 302 | 删除: dataItem.Color = "#E5F7F6F2"; | |
| 303 | 删除: } | |
| 304 | 删除: chartData.Add(dataItem); | |
| 305 | 新增: dataItem.Color = "#E5F7F6F2"; | |
| 305 | 306 | } |
| 307 | 新增: chartData.Add(dataItem); | |
| 306 | 308 | } |
| 307 | 309 | } |
| 310 | 新增: | |
| 311 | 新增: if (ChartDataMode.Id == 1) | |
| 312 | 新增: { | |
| 313 | 新增: Data = chartData; | |
| 314 | 新增: } | |
| 308 | 315 | else |
| 309 | 316 | { |
| 310 | 317 | // 汇总 |
| @@ -317,10 +324,11 @@ namespace UI.ViewModels | ||
| 317 | 324 | ColumnNames = weekNames, |
| 318 | 325 | }; |
| 319 | 326 | |
| 320 | 删除: chartData.Add(dataItem); | |
| 327 | 新增: sumData.Add(dataItem); | |
| 328 | 新增: Data = sumData; | |
| 321 | 329 | } |
| 322 | 330 | |
| 323 | 删除: Data = chartData; | |
| 331 | 新增: RadarData = chartData; | |
| 324 | 332 | double totalUse = Data.Sum(m => m.Values.Sum()); |
| 325 | 333 | TotalHours = Time.ToHoursString(totalUse); |
| 326 | 334 | }); |
| @@ -340,44 +348,46 @@ namespace UI.ViewModels | ||
| 340 | 348 | Task.Run(() => |
| 341 | 349 | { |
| 342 | 350 | var chartData = new List<ChartsDataModel>(); |
| 351 | 新增: var sumData = new List<ChartsDataModel>(); | |
| 343 | 352 | var dateArr = Time.GetMonthDate(MonthDate); |
| 344 | 353 | |
| 345 | 删除: if (ChartDataMode.Id == 1) | |
| 354 | 新增: var list = data.GetCategoryRangeData(dateArr[0], dateArr[1]); | |
| 355 | 新增: | |
| 356 | 新增: var nullCategory = new CategoryModel() | |
| 346 | 357 | { |
| 347 | 删除: var list = data.GetCategoryRangeData(dateArr[0], dateArr[1]); | |
| 358 | 新增: ID = 0, | |
| 359 | 新增: Name = "未分类", | |
| 360 | 新增: IconFile = "pack://application:,,,/Tai;component/Resources/Icons/tai32.ico" | |
| 361 | 新增: }; | |
| 348 | 362 | |
| 349 | 删除: var nullCategory = new CategoryModel() | |
| 363 | 新增: foreach (var item in list) | |
| 364 | 新增: { | |
| 365 | 新增: var category = categorys.GetCategory(item.CategoryID); | |
| 366 | 新增: if (item.CategoryID == 0) | |
| 350 | 367 | { |
| 351 | 删除: ID = 0, | |
| 352 | 删除: Name = "未分类", | |
| 353 | 删除: IconFile = "pack://application:,,,/Tai;component/Resources/Icons/tai32.ico" | |
| 354 | 删除: }; | |
| 355 | 删除: | |
| 356 | 删除: foreach (var item in list) | |
| 368 | 新增: category = nullCategory; | |
| 369 | 新增: } | |
| 370 | 新增: if (category != null) | |
| 357 | 371 | { |
| 358 | 删除: var category = categorys.GetCategory(item.CategoryID); | |
| 359 | 删除: if (item.CategoryID == 0) | |
| 372 | 新增: var dataItem = new ChartsDataModel() | |
| 360 | 373 | { |
| 361 | 删除: category = nullCategory; | |
| 362 | 删除: } | |
| 363 | 删除: if (category != null) | |
| 374 | 新增: | |
| 375 | 新增: Name = category.Name, | |
| 376 | 新增: Icon = category.IconFile, | |
| 377 | 新增: Values = item.Values, | |
| 378 | 新增: Color = category.Color | |
| 379 | 新增: }; | |
| 380 | 新增: if (category.ID == 0) | |
| 364 | 381 | { |
| 365 | 删除: var dataItem = new ChartsDataModel() | |
| 366 | 删除: { | |
| 367 | 删除: | |
| 368 | 删除: Name = category.Name, | |
| 369 | 删除: Icon = category.IconFile, | |
| 370 | 删除: Values = item.Values, | |
| 371 | 删除: Color = category.Color | |
| 372 | 删除: }; | |
| 373 | 删除: if (category.ID == 0) | |
| 374 | 删除: { | |
| 375 | 删除: dataItem.Color = "#E5F7F6F2"; | |
| 376 | 删除: } | |
| 377 | 删除: chartData.Add(dataItem); | |
| 382 | 新增: dataItem.Color = "#E5F7F6F2"; | |
| 378 | 383 | } |
| 384 | 新增: chartData.Add(dataItem); | |
| 379 | 385 | } |
| 380 | 386 | } |
| 387 | 新增: if (ChartDataMode.Id == 1) | |
| 388 | 新增: { | |
| 389 | 新增: Data = chartData; | |
| 390 | 新增: } | |
| 381 | 391 | else |
| 382 | 392 | { |
| 383 | 393 | // 汇总 |
| @@ -387,10 +397,11 @@ namespace UI.ViewModels | ||
| 387 | 397 | { |
| 388 | 398 | Values = values, |
| 389 | 399 | }; |
| 390 | 删除: chartData.Add(dataItem); | |
| 400 | 新增: sumData.Add(dataItem); | |
| 401 | 新增: Data = sumData; | |
| 391 | 402 | } |
| 392 | 403 | |
| 393 | 删除: Data = chartData; | |
| 404 | 新增: RadarData = chartData; | |
| 394 | 405 | double totalUse = Data.Sum(m => m.Values.Sum()); |
| 395 | 406 | TotalHours = Time.ToHoursString(totalUse); |
| 396 | 407 | LoadTopData(); |
| @@ -408,48 +419,54 @@ namespace UI.ViewModels | ||
| 408 | 419 | Task.Run(() => |
| 409 | 420 | { |
| 410 | 421 | var chartData = new List<ChartsDataModel>(); |
| 422 | 新增: var sumData = new List<ChartsDataModel>(); | |
| 411 | 423 | string[] names = new string[12]; |
| 412 | 424 | for (int i = 0; i < 12; i++) |
| 413 | 425 | { |
| 414 | 426 | names[i] = (i + 1) + "月"; |
| 415 | 427 | } |
| 416 | 428 | |
| 417 | 删除: if (ChartDataMode.Id == 1) | |
| 429 | 新增: var list = data.GetCategoryYearData(YearDate); | |
| 430 | 新增: var nullCategory = new CategoryModel() | |
| 418 | 431 | { |
| 419 | 删除: var list = data.GetCategoryYearData(YearDate); | |
| 420 | 删除: var nullCategory = new CategoryModel() | |
| 421 | 删除: { | |
| 422 | 删除: ID = 0, | |
| 423 | 删除: Name = "未分类", | |
| 424 | 删除: IconFile = "pack://application:,,,/Tai;component/Resources/Icons/tai32.ico" | |
| 425 | 删除: }; | |
| 432 | 新增: ID = 0, | |
| 433 | 新增: Name = "未分类", | |
| 434 | 新增: IconFile = "pack://application:,,,/Tai;component/Resources/Icons/tai32.ico" | |
| 435 | 新增: }; | |
| 426 | 436 | |
| 427 | 删除: foreach (var item in list) | |
| 437 | 新增: foreach (var item in list) | |
| 438 | 新增: { | |
| 439 | 新增: var category = categorys.GetCategory(item.CategoryID); | |
| 440 | 新增: if (item.CategoryID == 0) | |
| 428 | 441 | { |
| 429 | 删除: var category = categorys.GetCategory(item.CategoryID); | |
| 430 | 删除: if (item.CategoryID == 0) | |
| 442 | 新增: category = nullCategory; | |
| 443 | 新增: } | |
| 444 | 新增: if (category != null) | |
| 445 | 新增: { | |
| 446 | 新增: var dataItem = new ChartsDataModel() | |
| 431 | 447 | { |
| 432 | 删除: category = nullCategory; | |
| 433 | 删除: } | |
| 434 | 删除: if (category != null) | |
| 448 | 新增: | |
| 449 | 新增: Name = category.Name, | |
| 450 | 新增: Icon = category.IconFile, | |
| 451 | 新增: Values = item.Values, | |
| 452 | 新增: ColumnNames = names, | |
| 453 | 新增: Color = category.Color | |
| 454 | 新增: }; | |
| 455 | 新增: if (category.ID == 0) | |
| 435 | 456 | { |
| 436 | 删除: var dataItem = new ChartsDataModel() | |
| 437 | 删除: { | |
| 438 | 删除: | |
| 439 | 删除: Name = category.Name, | |
| 440 | 删除: Icon = category.IconFile, | |
| 441 | 删除: Values = item.Values, | |
| 442 | 删除: ColumnNames = names, | |
| 443 | 删除: Color = category.Color | |
| 444 | 删除: }; | |
| 445 | 删除: if (category.ID == 0) | |
| 446 | 删除: { | |
| 447 | 删除: dataItem.Color = "#E5F7F6F2"; | |
| 448 | 删除: } | |
| 449 | 删除: chartData.Add(dataItem); | |
| 457 | 新增: dataItem.Color = "#E5F7F6F2"; | |
| 450 | 458 | } |
| 459 | 新增: chartData.Add(dataItem); | |
| 451 | 460 | } |
| 452 | 461 | } |
| 462 | 新增: | |
| 463 | 新增: | |
| 464 | 新增: | |
| 465 | 新增: | |
| 466 | 新增: if (ChartDataMode.Id == 1) | |
| 467 | 新增: { | |
| 468 | 新增: Data = chartData; | |
| 469 | 新增: } | |
| 453 | 470 | else |
| 454 | 471 | { |
| 455 | 472 | // 汇总 |
| @@ -459,11 +476,13 @@ namespace UI.ViewModels | ||
| 459 | 476 | Values = values, |
| 460 | 477 | ColumnNames = names, |
| 461 | 478 | }; |
| 479 | 新增: sumData.Add(dataItem); | |
| 462 | 480 | |
| 463 | 删除: chartData.Add(dataItem); | |
| 481 | 新增: Data = sumData; | |
| 464 | 482 | } |
| 465 | 483 | |
| 466 | 删除: Data = chartData; | |
| 484 | 新增: RadarData = chartData; | |
| 485 | 新增: | |
| 467 | 486 | double totalUse = Data.Sum(m => m.Values.Sum()); |
| 468 | 487 | TotalHours = Time.ToHoursString(totalUse); |
| 469 | 488 | LoadTopData(); |
| @@ -189,7 +189,7 @@ | ||
| 189 | 189 | |
| 190 | 190 | <TextBlock Text="分类" Foreground="#5c5c5c" FontSize="15" Margin="0,20,0,5"/> |
| 191 | 191 | <Border Margin="0,5,0,0" Grid.Row="1" Background="{DynamicResource StandardBackgroundBrush}" Padding="20" CornerRadius="10"> |
| 192 | 删除: <charts:Charts Margin="10,20,10,10" Height="230" Width="230" ChartsType="Radar" Data="{Binding Data}"/> | |
| 192 | 新增: <charts:Charts Margin="10,20,10,10" Height="230" Width="230" ChartsType="Radar" Data="{Binding RadarData}"/> | |
| 193 | 193 | |
| 194 | 194 | </Border> |
| 195 | 195 | </Grid> |

