using BBWYB.Client.APIServices; using BBWYB.Client.Extensions; using BBWYB.Client.Models; using BBWYB.Client.Models.APIModel; using BBWYB.Client.Models.PackPurchaseTask; using CommunityToolkit.Mvvm.Input; using SJ.Controls; using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Linq; using System.Net; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Shapes; namespace BBWYB.Client.Views.PackPurchaseTask { /// /// SetCerWindow.xaml 的交互逻辑 /// public partial class SetCerWindow : BWindow { public SetCerWindow() { InitializeComponent(); SetPackCerStateCommand = new RelayCommand(SetPackCerState); } private void SetPackCerState(PackCerState obj) { PackCerState = obj; } public void LoadData( bool isNeedCer,CertificateModel CertificateModel, PackPurchaseTaskService packTaskService, CertificateModel SpuCertificateModel, bool IsSetSpuCertificate) { this.CertificateModel = CertificateModel.Copy(); this.packTaskService = packTaskService; PackCerState = isNeedCer ? PackCerState.合格证信息 : PackCerState.无需合格证; this.DataContext = this; } public ICommand SetPackCerStateCommand { get; set; } //public PackCerState PackCerState { get; set; } public PackCerState PackCerState { get { return (PackCerState)GetValue(PackCerStateProperty); } set { SetValue(PackCerStateProperty, value); } } public static readonly DependencyProperty PackCerStateProperty = DependencyProperty.Register("PackCerState", typeof(PackCerState), typeof(SetCerWindow)); public bool IsSetSpuCertificate { get; set; } public PackPurchaseTaskService packTaskService { get; set; } public CertificateModel CertificateModel { get; set; } public CertificateModel SpuCertificateModel { get; set; } public Action SaveResult { get; set; } private void save_btn_Click(object sender, RoutedEventArgs e) { if (PackCerState== PackCerState.无需合格证) { if (SaveResult != null) SaveResult(CertificateModel, PackCerState); this.Close(); return; } if (string.IsNullOrEmpty(CertificateModel.ExcuteStander) || string.IsNullOrEmpty(CertificateModel.Shader) || string.IsNullOrEmpty(CertificateModel.BrandName) || string.IsNullOrEmpty(CertificateModel.Brand) || string.IsNullOrEmpty(CertificateModel.ProductShop) || string.IsNullOrEmpty(CertificateModel.ProductAdress)) { //new TipsWindow("参数出错!请重新填写!").Show(); MessageBox.Show("有未填写的参数"); return; } if ((CertificateModel.LabelModel == CertificateLabelModel.标准无3c || CertificateModel.LabelModel == CertificateLabelModel.标准有3c) && string.IsNullOrEmpty(CertificateModel.ProductNo)) { MessageBox.Show("型号不能为空"); return; } if (CertificateModel.LabelModel == CertificateLabelModel.标准有3c && string.IsNullOrEmpty(CertificateModel.FactoryNumber)) { MessageBox.Show("工厂编号不能为空"); return; } if (CertificateModel.LabelModel == CertificateLabelModel.适用年龄 && string.IsNullOrEmpty(CertificateModel.ApplyAge)) { MessageBox.Show("适用年龄不能为空"); return; } var standers = CertificateModel.ExcuteStander.Split(',', StringSplitOptions.RemoveEmptyEntries); var resData = packTaskService.SaveCer(new CerRequest { Brand = CertificateModel.Brand, BrandName = CertificateModel.BrandName, ProductNo = CertificateModel.ProductNo, SkuId = CertificateModel.SkuId, ExcuteStander = CertificateModel.ExcuteStander, LabelModel = (int)CertificateModel.LabelModel, FactoryNumber = CertificateModel.FactoryNumber, IsLogo = CertificateModel.IsLogo, ProductAdress = CertificateModel.ProductAdress, ProductShop = CertificateModel.ProductShop, Shader = CertificateModel.Shader, ApplyAge = CertificateModel.ApplyAge, GoodsNumber = CertificateModel.GoodsNumber, ProduceDate = CertificateModel.ProduceDate, PurchaseSkuId = CertificateModel.PurchaseSkuId }); if (resData == null || !resData.Success) { return; } CertificateModel.Id = resData.Data; if (SaveResult != null) SaveResult(CertificateModel, PackCerState); this.Close(); } } public class GoodsNumberCer { /// /// 配件序号 /// // public int GoodsNumber { get; set; } public CertificateModel CertificateModel { get; set; } } }