22 changed files with 2481 additions and 807 deletions
File diff suppressed because it is too large
@ -0,0 +1,11 @@ |
|||
<UserControl x:Class="BBWY.Client.Views.PackTask.MinFeesExcelControl" |
|||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" |
|||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" |
|||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" |
|||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" |
|||
xmlns:local="clr-namespace:BBWY.Client.Views.PackTask" |
|||
mc:Ignorable="d" |
|||
d:DesignHeight="150" d:DesignWidth="1800"> |
|||
|
|||
<Grid x:Name ="gd"/> |
|||
</UserControl> |
@ -0,0 +1,526 @@ |
|||
using BBWY.Client.Models.APIModel.Response.PackTask; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using System.Text; |
|||
using System.Windows; |
|||
using System.Windows.Controls; |
|||
using System.Windows.Data; |
|||
using System.Windows.Documents; |
|||
using System.Windows.Input; |
|||
using System.Windows.Markup; |
|||
using System.Windows.Media; |
|||
using System.Windows.Media.Imaging; |
|||
using System.Windows.Navigation; |
|||
using System.Windows.Shapes; |
|||
|
|||
namespace BBWY.Client.Views.PackTask |
|||
{ |
|||
/// <summary>
|
|||
/// MinFeesExcelControl.xaml 的交互逻辑
|
|||
/// </summary>
|
|||
public partial class MinFeesExcelControl : UserControl |
|||
{ |
|||
public MinFeesExcelControl() |
|||
{ |
|||
InitializeComponent(); |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 是否仓库端
|
|||
/// </summary>
|
|||
public bool IsWareHouse |
|||
{ |
|||
get { return (bool)GetValue(IsWareHouseProperty); } |
|||
set |
|||
{ |
|||
SetValue(IsWareHouseProperty, value); |
|||
} |
|||
} |
|||
|
|||
|
|||
public static readonly DependencyProperty IsWareHouseProperty = |
|||
DependencyProperty.Register("IsWareHouse", typeof(bool), typeof(MinFeesExcelControl), new PropertyMetadata(true, ChangedProperty1)); |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 价格
|
|||
/// </summary>
|
|||
//public decimal FeesPrice
|
|||
//{
|
|||
// get { return (decimal)GetValue(FeesPriceProperty); }
|
|||
// set
|
|||
// {
|
|||
// SetValue(FeesPriceProperty, value);
|
|||
// }
|
|||
//}
|
|||
|
|||
|
|||
//public static readonly DependencyProperty FeesPriceProperty =
|
|||
// DependencyProperty.Register("FeesPrice", typeof(decimal), typeof(FeesExcelControl), new PropertyMetadata(ChangedProperty2));
|
|||
|
|||
|
|||
public bool IsMin |
|||
{ |
|||
get |
|||
{ |
|||
return (bool)GetValue(IsMinProperty); |
|||
|
|||
} |
|||
set |
|||
{ |
|||
SetValue(IsMinProperty, value); |
|||
} |
|||
} |
|||
public static readonly DependencyProperty IsMinProperty = |
|||
DependencyProperty.Register("IsMin", typeof(bool), typeof(MinFeesExcelControl)); |
|||
|
|||
|
|||
|
|||
public FeesItemResponse FeesItem |
|||
{ |
|||
get |
|||
{ |
|||
return (FeesItemResponse)GetValue(FeesItemProperty); |
|||
|
|||
} |
|||
set |
|||
{ |
|||
SetValue(FeesItemProperty, value); |
|||
} |
|||
} |
|||
|
|||
|
|||
public static readonly DependencyProperty FeesItemProperty = |
|||
DependencyProperty.Register("FeesItem", typeof(FeesItemResponse), typeof(MinFeesExcelControl), new PropertyMetadata(ChangedProperty)); |
|||
|
|||
|
|||
private static void ChangedProperty1(DependencyObject d, DependencyPropertyChangedEventArgs e) |
|||
{ |
|||
var control = d as FeesExcelControl; |
|||
|
|||
var newValue = e.NewValue as FeesItemResponse; |
|||
|
|||
} |
|||
|
|||
private static void ChangedProperty(DependencyObject d, DependencyPropertyChangedEventArgs e) |
|||
{ |
|||
var control = d as MinFeesExcelControl; |
|||
// control.Str
|
|||
var newValue = e.NewValue as FeesItemResponse; |
|||
control.FeesItem = newValue; |
|||
if (control.IsWareHouse) |
|||
{ |
|||
control.LoadData(false); |
|||
} |
|||
else |
|||
{ |
|||
control.LoadData(true); |
|||
} |
|||
|
|||
} |
|||
|
|||
|
|||
string xaml = @" <Grid xmlns=""http://schemas.microsoft.com/winfx/2006/xaml/presentation"">
|
|||
<Grid.ColumnDefinitions > |
|||
[:Columns:] |
|||
</Grid.ColumnDefinitions> |
|||
<Grid.RowDefinitions> |
|||
<RowDefinition Height=""30"" /> |
|||
<RowDefinition Height=""30"" /> |
|||
<RowDefinition Height=""30"" /> |
|||
<RowDefinition Height=""30"" /> |
|||
</Grid.RowDefinitions> |
|||
<Border Background=""#F2F2F2"" Grid.RowSpan=""3"" Grid.ColumnSpan=""[:ColumnCount:]""/> |
|||
|
|||
<Border Width=""1"" HorizontalAlignment=""Left"" BorderBrush=""#D7D7D7"" Grid.Column=""0"" Grid.Row=""0"" Grid.RowSpan=""4"" BorderThickness=""1,0,0,0""/> |
|||
|
|||
|
|||
|
|||
|
|||
<Border Width=""1"" HorizontalAlignment=""Right"" BorderBrush=""#D7D7D7"" Grid.Column=""[:1+IncreateCount+ProcessCount:+ConsumableCount]"" Grid.Row=""0"" Grid.RowSpan=""4"" BorderThickness=""0,0,1,0""/> |
|||
|
|||
|
|||
<Border Height=""1"" VerticalAlignment=""Top"" BorderBrush=""#D7D7D7"" Grid.Column=""0"" Grid.Row=""0"" Grid.ColumnSpan=""[:ColumnCount:]"" BorderThickness=""0,1,0,0""/> |
|||
<Border Height=""1"" VerticalAlignment=""Top"" BorderBrush=""#D7D7D7"" Grid.Column=""0"" Grid.Row=""1"" Grid.ColumnSpan=""[:ColumnCount-2:]"" BorderThickness=""0,1,0,0""/> |
|||
<Border Height=""1"" VerticalAlignment=""Bottom"" BorderBrush=""#D7D7D7"" Grid.Column=""0"" Grid.Row=""2"" Grid.ColumnSpan=""[:ColumnCount:]"" BorderThickness=""0,1,0,0""/> |
|||
<Border Height=""1"" VerticalAlignment=""Bottom"" BorderBrush=""#D7D7D7"" Grid.Column=""0"" Grid.Row=""3"" Grid.ColumnSpan=""[:ColumnCount:]"" BorderThickness=""0,1,0,0""/> |
|||
|
|||
|
|||
[:Header:] |
|||
<TextBlock MinWidth=""101"" TextAlignment=""Center"" Text=""结算金额"" Grid.Column=""[:1+IncreateCount+ProcessCount:+ConsumableCount]"" Grid.RowSpan=""3"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/> |
|||
<TextBlock Text=""[:AllFees:]"" Grid.Row=""3"" Grid.Column=""[:1+IncreateCount+ProcessCount:+ConsumableCount]"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/> |
|||
[:ListData:] |
|||
</Grid>";
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
/// <summary>
|
|||
/// index 从1开始 0+1 增值服务 和打包耗材
|
|||
/// </summary>
|
|||
string columnData = @"
|
|||
<Grid Grid.Column=""[:index:]"" MinWidth=""84"" Grid.Row=""1"" Grid.RowSpan=""3"" > |
|||
<Grid.RowDefinitions> |
|||
<RowDefinition Height=""*""/> |
|||
<RowDefinition Height=""*""/> |
|||
</Grid.RowDefinitions> |
|||
<Border Width=""1"" HorizontalAlignment=""Left"" BorderBrush=""#D7D7D7"" Grid.RowSpan=""2"" BorderThickness=""0,0,1,0""/> |
|||
<TextBlock Text=""[:ServiceName:]"" Grid.Row=""0"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/> |
|||
<TextBlock Text=""[:ServiceCount:]"" Grid.Row=""1"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/> |
|||
</Grid>";
|
|||
|
|||
|
|||
|
|||
|
|||
string incrementConsumableStr = @" <Grid Grid.Column=""[:index:]"" MinWidth=""84"" Grid.Row=""1"" Grid.RowSpan=""3"" >
|
|||
<Grid.RowDefinitions> |
|||
<RowDefinition Height=""2*""/> |
|||
<RowDefinition Height=""*""/> |
|||
</Grid.RowDefinitions> |
|||
<Border Width=""1"" HorizontalAlignment=""Left"" BorderBrush=""#D7D7D7"" Grid.RowSpan=""2"" BorderThickness=""0,0,1,0""/> |
|||
<TextBlock Text=""[:ServiceName:]"" Grid.Row=""0"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/> |
|||
<TextBlock Text=""[:ServiceCount:]"" Grid.Row=""1"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/> |
|||
</Grid>";
|
|||
|
|||
//string totalIncrementConsumableStr = @" <Grid Grid.Column=""[:index:]"" MinWidth=""84"" Grid.Row=""1"" Grid.RowSpan=""3"" >
|
|||
// <Grid.RowDefinitions>
|
|||
// <RowDefinition Height=""2*""/>
|
|||
// <RowDefinition Height=""*""/>
|
|||
// </Grid.RowDefinitions>
|
|||
// <Border Width=""1"" HorizontalAlignment=""Left"" BorderBrush=""#D7D7D7"" Grid.RowSpan=""2"" BorderThickness=""0,0,1,0""/>
|
|||
// <TextBlock Text=""小计"" Grid.Row=""0"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/>
|
|||
// <TextBlock Text=""[:Price:]"" Grid.Row=""1"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/>
|
|||
//</Grid>";
|
|||
|
|||
string basicPackStr = @" <Grid Grid.Column=""[:index:]"" MinWidth=""84"" Grid.Row=""1"" Grid.RowSpan=""3"" >
|
|||
<Grid.RowDefinitions> |
|||
<RowDefinition /> |
|||
<RowDefinition /> |
|||
<RowDefinition /> |
|||
</Grid.RowDefinitions> |
|||
<Border Width=""1"" HorizontalAlignment=""Left"" BorderBrush=""#D7D7D7"" Grid.RowSpan=""2"" BorderThickness=""0,0,1,0""/> |
|||
<TextBlock Text=""基础包装"" Grid.Row=""0"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/> |
|||
<Grid Grid.Row=""1"" > |
|||
<Grid.ColumnDefinitions> |
|||
[:Columns:] |
|||
</Grid.ColumnDefinitions> |
|||
[:BasicProcessData:] |
|||
|
|||
<Border Height=""1"" VerticalAlignment=""Top"" BorderBrush=""#D7D7D7"" Grid.Row=""1"" Grid.ColumnSpan=""2"" BorderThickness=""0,1,0,0""/> |
|||
</Grid> |
|||
<TextBlock Text=""[:ServiceCount:]"" Grid.Row=""3"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/> |
|||
<Border Width=""1"" HorizontalAlignment=""Left"" BorderBrush=""#D7D7D7"" Grid.Row=""0"" Grid.RowSpan=""3"" BorderThickness=""1,0,0,0""/> |
|||
</Grid>";
|
|||
|
|||
string basicProcessdata = @" <TextBlock Text=""[:ServiceName:]"" Grid.Column=""[:index:]"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/>
|
|||
<Border Width=""1"" HorizontalAlignment=""Right"" BorderBrush=""#D7D7D7"" BorderThickness=""0,0,1,0""/>";
|
|||
|
|||
string increateProcessStr = @"<Grid Grid.Column=""[:index:]"" Grid.Row=""1"" Grid.RowSpan=""3"" >
|
|||
<Grid.RowDefinitions> |
|||
<RowDefinition Height=""*""/> |
|||
<RowDefinition Height=""2*""/> |
|||
|
|||
</Grid.RowDefinitions> |
|||
|
|||
<TextBlock Text=""增量工序"" Grid.Row=""0"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/> |
|||
|
|||
<Grid Grid.Row=""1""> |
|||
<Grid.ColumnDefinitions> |
|||
[:Columns:] |
|||
</Grid.ColumnDefinitions> |
|||
|
|||
[:IncreateProcessDatas:] |
|||
|
|||
<Border Height=""1"" VerticalAlignment=""Top"" BorderBrush=""#D7D7D7"" Grid.Row=""1"" Grid.ColumnSpan=""[:IncreateProcessCount:]"" BorderThickness=""0,1,0,0""/> |
|||
</Grid> |
|||
<Border Width=""1"" HorizontalAlignment=""Left"" BorderBrush=""#D7D7D7"" Grid.Row=""0"" Grid.RowSpan=""3"" BorderThickness=""1,0,0,0""/> |
|||
</Grid>";
|
|||
string increateProcessData = @" <Grid Grid.Column=""[:index:]"" MinWidth=""84"" Grid.Row=""1"" Grid.RowSpan=""2"" >
|
|||
<Grid.RowDefinitions> |
|||
<RowDefinition /> |
|||
<RowDefinition /> |
|||
</Grid.RowDefinitions> |
|||
<Border Width=""1"" HorizontalAlignment=""Left"" BorderBrush=""#D7D7D7"" Grid.RowSpan=""2"" BorderThickness=""0,0,1,0""/> |
|||
<TextBlock Text=""[:ServiceName:]"" Grid.Row=""0"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/> |
|||
<TextBlock Text=""[:ServiceCount:]"" Grid.Row=""1"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/> |
|||
</Grid>";
|
|||
|
|||
string increatePartData = @"<Grid Grid.Column=""[:index:]"" MinWidth=""84"" Grid.Row=""1"" Grid.RowSpan=""3"" >
|
|||
<Grid.RowDefinitions> |
|||
<RowDefinition /> |
|||
<RowDefinition /> |
|||
<RowDefinition /> |
|||
</Grid.RowDefinitions> |
|||
|
|||
<TextBlock Text=""增量配件"" Grid.Row=""0"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/> |
|||
<TextBlock Text=""[:PartCount:]件"" Grid.Row=""1"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/> |
|||
<TextBlock Text=""[:ServiceCount:]"" Grid.Row=""2"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/> |
|||
<Border Height=""1"" VerticalAlignment=""Top"" Grid.Row=""1"" BorderBrush=""#D7D7D7"" BorderThickness=""0,1,0,0""/> |
|||
<Border Width=""1"" HorizontalAlignment=""Left"" BorderBrush=""#D7D7D7"" Grid.RowSpan=""3"" BorderThickness=""0,0,1,0""/> |
|||
</Grid>";
|
|||
|
|||
|
|||
|
|||
string FeesModeStr = @"<Grid Grid.Column=""[:index:]"" MinWidth=""84"" Grid.Row=""1"" Grid.RowSpan=""3"" >
|
|||
<Grid.RowDefinitions> |
|||
<RowDefinition Height=""2*""/> |
|||
<RowDefinition Height=""*""/> |
|||
</Grid.RowDefinitions> |
|||
<Border Width=""1"" HorizontalAlignment=""Left"" BorderBrush=""#D7D7D7"" Grid.RowSpan=""2"" BorderThickness=""0,0,1,0""/> |
|||
<TextBlock Text=""收费方式"" Grid.Row=""0"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/> |
|||
<TextBlock Text=""[:FeesMode:]"" Grid.Row=""1"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/> |
|||
</Grid>";
|
|||
|
|||
string discountFactorStr = @" <Grid Grid.Column=""[:index:]"" MinWidth=""84"" Grid.Row=""1"" Grid.RowSpan=""3"" >
|
|||
<Grid.RowDefinitions> |
|||
<RowDefinition Height=""2*""/> |
|||
<RowDefinition Height=""*""/> |
|||
</Grid.RowDefinitions> |
|||
<Border Width=""1"" HorizontalAlignment=""Left"" BorderBrush=""#D7D7D7"" Grid.RowSpan=""2"" BorderThickness=""0,0,1,0""/> |
|||
<TextBlock Text=""折扣系数"" Grid.Row=""0"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/> |
|||
<TextBlock Text=""[:DiscountFactor:]"" Grid.Row=""1"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/> |
|||
</Grid>";
|
|||
//string processFeesStr = @"
|
|||
|
|||
|
|||
//<Grid Grid.Column=""[:index:]"" MinWidth=""84"" Grid.Row=""1"" Grid.RowSpan=""3"" >
|
|||
// <Grid.RowDefinitions>
|
|||
// <RowDefinition Height=""2*""/>
|
|||
// <RowDefinition Height=""*""/>
|
|||
// </Grid.RowDefinitions>
|
|||
// <Border Width=""1"" HorizontalAlignment=""Left"" BorderBrush=""#D7D7D7"" Grid.RowSpan=""2"" BorderThickness=""0,0,1,0""/>
|
|||
// <TextBlock Text=""小计"" Grid.Row=""0"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/>
|
|||
// <TextBlock Text=""[:PackFees:]"" Grid.Row=""1"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/>
|
|||
//</Grid>";
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
string columnStr = "<ColumnDefinition Width=\"auto\"/>"; |
|||
|
|||
//string increateService = @" <TextBlock Text=""增值服务"" Grid.Column=""1"" Grid.ColumnSpan=""2"" VerticalAlignment=""Center"" HorizontalAlignment=""Center""/>
|
|||
// <Border Width=""1"" HorizontalAlignment=""Left"" BorderBrush=""#D7D7D7"" Grid.Column=""[:1+IncreateCount:]"" Grid.Row=""0"" Grid.RowSpan=""4"" BorderThickness=""1,0,0,0""/>";
|
|||
|
|||
string workProcess = "<TextBlock Text=\"打包服务\" Grid.Column=\"[:1+IncreateCount:]\" Grid.ColumnSpan=\"[:ProcessCount:]\" VerticalAlignment=\"Center\" HorizontalAlignment=\"Center\"/>\r\n <Border Width=\"1\" HorizontalAlignment=\"Left\" BorderBrush=\"#D7D7D7\" Grid.Column=\"[:1+IncreateCount+ProcessCount:]\" Grid.Row=\"0\" Grid.RowSpan=\"4\" BorderThickness=\"1,0,0,0\"/>\r\n "; |
|||
|
|||
string consumableService = "<TextBlock Text=\"打包耗材\" Grid.Column=\"[:1+IncreateCount+ProcessCount:]\" Grid.ColumnSpan=\"[:ConsumableCount:]\" VerticalAlignment=\"Center\" HorizontalAlignment=\"Center\"/>\r\n <Border Width=\"1\" HorizontalAlignment=\"Left\" BorderBrush=\"#D7D7D7\" Grid.Column=\"[:1+IncreateCount+ProcessCount:+ConsumableCount]\" Grid.Row=\"0\" Grid.RowSpan=\"4\" BorderThickness=\"1,0,0,0\"/>\r\n "; |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
private void LoadData(bool isPrice) |
|||
{ |
|||
isPrice = false; |
|||
if (FeesItem == null || FeesItem.ServiceList.Count <= 0) |
|||
{ |
|||
return; |
|||
} |
|||
try |
|||
{ |
|||
|
|||
App.Current.Dispatcher.Invoke(() => |
|||
{ |
|||
gd.Children.Clear(); |
|||
}); |
|||
|
|||
int packserviceCount = 0; |
|||
bool isExitIncrementPart = false; |
|||
|
|||
if (FeesItem.IncrementPartTaskCount != null && FeesItem.IncrementPartTaskCount > 0 && FeesItem.IncrementPartCount > 1) |
|||
{ |
|||
isExitIncrementPart = true; |
|||
packserviceCount++; |
|||
} |
|||
|
|||
var basicProcessList = FeesItem.PackItemList.Where(f => f.ProcessType == Models.ProcessType.基础包装工序).ToList(); |
|||
if (basicProcessList.Count > 0) packserviceCount++; |
|||
|
|||
var increateProcessList = FeesItem.PackItemList.Where(f => f.ProcessType == Models.ProcessType.增值服务工序).ToList(); |
|||
if (increateProcessList.Count > 0) packserviceCount++; |
|||
var processList = FeesItem.PackItemList; |
|||
var consumableList = FeesItem.ConsumableList; |
|||
|
|||
if (packserviceCount > 0) packserviceCount += 2; |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
var processCount = packserviceCount; |
|||
var consumableCount = consumableList.Count(); |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
var columnCount = consumableCount + processCount + 1; |
|||
StringBuilder columns = new StringBuilder(); |
|||
for (int i = 0; i < columnCount; i++) |
|||
{ |
|||
columns.AppendLine(columnStr); |
|||
} |
|||
StringBuilder serviceData = new StringBuilder(); |
|||
|
|||
int allCount = consumableCount + processCount ; |
|||
|
|||
|
|||
|
|||
int rowIndex = 0; |
|||
|
|||
if (basicProcessList.Count > 0)//打包服务
|
|||
{ |
|||
StringBuilder basicSB = new StringBuilder(); |
|||
StringBuilder basiccolumns = new StringBuilder(); |
|||
for (int i = 0; i < basicProcessList.Count; i++) |
|||
{ |
|||
basicSB.AppendLine(basicProcessdata.Replace("[:index:]", $"{i}") |
|||
.Replace("[:ServiceName:]", $"{basicProcessList[i].ItemName}") |
|||
.Replace("[:ServiceCount:]", $"{basicProcessList[i].ItemPrice}*{basicProcessList[i].ItemCount}")); |
|||
basiccolumns.AppendLine(columnStr); |
|||
} |
|||
|
|||
|
|||
serviceData.AppendLine(basicPackStr.Replace("[:index:]", $"{rowIndex}") |
|||
.Replace("[:Columns:]", $"{basiccolumns}") |
|||
.Replace("[:ServiceCount:]", $"{FeesItem.BasicProcessPrice}*{FeesItem.BasicProcessCount}") |
|||
.Replace("[:BasicProcessData:]", basicSB.ToString())); |
|||
|
|||
|
|||
|
|||
|
|||
} |
|||
if (increateProcessList.Count > 0) |
|||
{ |
|||
rowIndex++; |
|||
StringBuilder increateProcessSB = new StringBuilder(); |
|||
StringBuilder increateProcesscolumns = new StringBuilder(); |
|||
for (int i = 0; i < increateProcessList.Count(); i++) |
|||
{ |
|||
increateProcessSB.AppendLine(increateProcessData.Replace("[:index:]", $"{i}") |
|||
.Replace("[:ServiceName:]", $"{increateProcessList[i].ItemName}") |
|||
.Replace("[:ServiceCount:]", $"{increateProcessList[i].ItemPrice}*{increateProcessList[i].ItemCount}")); |
|||
increateProcesscolumns.AppendLine(columnStr); |
|||
} |
|||
//[:IncreateProcessCount:]
|
|||
serviceData.AppendLine(increateProcessStr.Replace("[:index:]", $"{rowIndex}") |
|||
.Replace("[:IncreateProcessCount:]", $"{increateProcessList.Count()}") |
|||
.Replace("[:Columns:]", $"{increateProcesscolumns}") |
|||
.Replace("[:IncreateProcessDatas:]", $"{increateProcessSB.ToString()}") |
|||
.Replace("[:ServiceCount:]", $"{FeesItem.BasicProcessPrice}*{FeesItem.BasicProcessCount}")); |
|||
} |
|||
|
|||
if (isExitIncrementPart) |
|||
{ |
|||
rowIndex++; |
|||
|
|||
serviceData.AppendLine(increatePartData.Replace("[:index:]", $"{rowIndex}") |
|||
.Replace("[:PartCount:]", $"{FeesItem.IncrementPartCount}") |
|||
.Replace("[:ServiceCount:]", $"{FeesItem.IncrementPartPrice}*{FeesItem.IncrementPartTaskCount}")); |
|||
} |
|||
|
|||
if (processCount > 0) |
|||
{ |
|||
rowIndex++; |
|||
serviceData.AppendLine(FeesModeStr.Replace("[:index:]", $"{rowIndex}") |
|||
.Replace("[:FeesMode:]", $"{FeesItem.FeesMode}")); |
|||
rowIndex++; |
|||
serviceData.AppendLine(discountFactorStr.Replace("[:index:]", $"{rowIndex}") |
|||
.Replace("[:DiscountFactor:]", $"{FeesItem.DiscountFoctor}") |
|||
); |
|||
|
|||
} |
|||
|
|||
if (consumableList.Count > 0) |
|||
{ |
|||
foreach (var item in consumableList) |
|||
{ |
|||
rowIndex++; |
|||
serviceData.AppendLine(incrementConsumableStr.Replace("[:index:]", $"{rowIndex}") |
|||
.Replace("[:ServiceName:]", $"{item.ItemName}") |
|||
.Replace("[:ServiceCount:]", $"")); |
|||
} |
|||
|
|||
} |
|||
|
|||
|
|||
StringBuilder header = new StringBuilder(); |
|||
|
|||
|
|||
if (processCount > 0) |
|||
{ |
|||
header.AppendLine(workProcess); |
|||
} |
|||
if (consumableCount > 0) |
|||
{ |
|||
header.AppendLine(consumableService); |
|||
} |
|||
decimal allFees = 0; |
|||
decimal discount = 0; |
|||
decimal discountFees = 0; |
|||
discount = FeesItem.disCount; |
|||
|
|||
allFees = FeesItem.AllFees; |
|||
|
|||
discountFees = allFees * discount; |
|||
string discountStr = "原价"; |
|||
|
|||
if (discount > 1) |
|||
discountStr = $"{discount.ToString("0.0")}倍"; |
|||
if (discount < 1) |
|||
discountStr = $"{(discount * 10).ToString("0.0")}折"; |
|||
var newGrid = xaml.Replace("[:Header:]", header.ToString()) |
|||
.Replace("[:Columns:]", columns.ToString()) |
|||
.Replace("[:ColumnCount:]", $"{columnCount}") |
|||
.Replace("[:ColumnCount-2:]", $"{columnCount - 1}") |
|||
.Replace("[:1+IncreateCount:]", $"{0}") |
|||
.Replace("[:1+IncreateCount+ProcessCount:]", $"{ processCount}") |
|||
.Replace("[:1+IncreateCount+ProcessCount:+ConsumableCount]", $"{ processCount + consumableCount}") |
|||
.Replace("[:2+IncreateCount+ProcessCount:+ConsumableCount]", $"{1 + processCount + consumableCount}") |
|||
.Replace("[:3+IncreateCount+ProcessCount:+ConsumableCount]", $"{2 + processCount + consumableCount}") |
|||
.Replace("[:IncreateCount:]", $"{0}") |
|||
.Replace("[:ProcessCount:]", $"{processCount}") |
|||
.Replace("[:ConsumableCount:]", $"{consumableCount}") |
|||
.Replace("[:TaskId:]", $"{FeesItem.TaskId}") |
|||
.Replace("[:ListData:]", serviceData.ToString()) |
|||
.Replace("[:AllFees:]", $"{FeesItem.PackFees}"); |
|||
//.Replace("[:Discount:]", $"{FeesItem.DiscountFoctor}")
|
|||
//.Replace("[:DiscountFees:]", $"{discountFees.ToString(" 0.00")}");
|
|||
if (IsMin) |
|||
{ |
|||
newGrid = newGrid.Replace(@"MinWidth=""84""", "").Replace(@"[:Visity:]", "Width=\"0\""); |
|||
} |
|||
else |
|||
{ |
|||
//
|
|||
newGrid = newGrid.Replace(@"[:Visity:]", ""); |
|||
} |
|||
|
|||
|
|||
|
|||
var grid = XamlReader.Parse(newGrid) as Grid; |
|||
App.Current.Dispatcher.Invoke(() => |
|||
{ |
|||
gd.Children.Add(grid); |
|||
}); |
|||
|
|||
} |
|||
catch |
|||
{ |
|||
|
|||
|
|||
} |
|||
|
|||
|
|||
|
|||
} |
|||
} |
|||
} |
File diff suppressed because it is too large
Loading…
Reference in new issue