using BBWY.Client.Models; using BBWY.Controls; using System.Collections.Generic; using System.Linq; using System.Windows; namespace BBWY.Client.Views.Order { /// /// ManualCalculationCost.xaml 的交互逻辑 /// public partial class ManualCalculationCost : BWindow { public string OrderId { get; private set; } public bool IsSetStorageType { get; private set; } public StorageType StorageType { get; private set; } public List ManualEditCostOrderSkuList { get; set; } public ManualCalculationCost(string orderId, bool isSetStorageType, StorageType storageType, IList manualEditCostOrderSkuList) { InitializeComponent(); this.DataContext = this; ManualEditCostOrderSkuList = new List(); ManualEditCostOrderSkuList.AddRange(manualEditCostOrderSkuList); foreach (var manualEditCostOrderSku in ManualEditCostOrderSkuList) manualEditCostOrderSku.OnAmountChanged = () => { txtTotalCost.Text = ManualEditCostOrderSkuList.Sum(osku => osku.TotalCost).ToString(); txtTotalDeliveryExpressFreight.Text = ManualEditCostOrderSkuList.Sum(osku => osku.DeliveryExpressFreight).ToString(); }; this.OrderId = orderId; this.IsSetStorageType = isSetStorageType; this.StorageType = storageType; this.Loaded += ManualCalculationCost_Loaded; } private void ManualCalculationCost_Loaded(object sender, RoutedEventArgs e) { txt_StorageType.Text = $"{this.StorageType}-手动计算成本"; //if (StorageType != StorageType.云仓 && StorageType != StorageType.京仓) //{ // txtFirstFreight.Visibility = Visibility.Collapsed; // this.Height = 290; //} txtTotalCost.Text = ManualEditCostOrderSkuList.Sum(osku => osku.TotalCost).ToString(); txtTotalDeliveryExpressFreight.Text = ManualEditCostOrderSkuList.Sum(osku => osku.DeliveryExpressFreight).ToString(); } private void btn_fillFromLately_Click(object sender, System.Windows.RoutedEventArgs e) { } private void btn_Save_Click(object sender, System.Windows.RoutedEventArgs e) { //if (!decimal.TryParse(txtSkuAmount.Text, out decimal skuAmount) || // !decimal.TryParse(txtFeright.Text, out decimal feright) || // !decimal.TryParse(txtDeliveryExpressFreight.Text, out decimal deliveryExpressFreight)) //{ // MessageBox.Show("请填写完整信息", "手动编辑成本"); // return; //} //decimal.TryParse(txtFirstFreight.Text, out decimal firstFreight); //decimal.TryParse(txtOperationAmount.Text, out decimal operationAmount); //decimal.TryParse(txtConsumableAmount.Text, out decimal consumableAmount); //decimal.TryParse(txtStorageAmount.Text, out decimal storageAmount); //this.PurchaseCost = skuAmount + feright + firstFreight + operationAmount + consumableAmount + storageAmount; //this.DeliveryExpressFreight = deliveryExpressFreight; this.DialogResult = true; this.Close(); } } }