You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
219 lines
8.3 KiB
219 lines
8.3 KiB
using BBWY.Client.APIServices;
|
|
using BBWY.Client.Models;
|
|
using BBWY.Client.Models.APIModel.Request;
|
|
using BBWY.Controls;
|
|
using NPOI.Util;
|
|
using Org.BouncyCastle.Asn1.Cmp;
|
|
using Org.BouncyCastle.Crypto.Parameters;
|
|
using Org.BouncyCastle.Ocsp;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Collections.ObjectModel;
|
|
using System.Linq;
|
|
using System.Runtime.ConstrainedExecution;
|
|
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.Media;
|
|
using System.Windows.Media.Imaging;
|
|
using System.Windows.Shapes;
|
|
|
|
namespace BBWY.Client.Views.PackTask
|
|
{
|
|
/// <summary>
|
|
/// SetCerWindow.xaml 的交互逻辑
|
|
/// </summary>
|
|
public partial class SetCerWindow : BWindow
|
|
{
|
|
public SetCerWindow()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
public void LoadData(CertificateModel[] CertificateModel, PackTaskService packTaskService, CertificateModel SpuCertificateModel, bool IsSetSpuCertificate)
|
|
{
|
|
this.CertificateModel = CertificateModel.Copy();
|
|
this.SpuCertificateModel = SpuCertificateModel.Copy();
|
|
this.packTaskService = packTaskService;
|
|
this.IsSetSpuCertificate = IsSetSpuCertificate;
|
|
SetSpuCer.Content = IsSetSpuCertificate ? "设置spu模板" : "修改spu模板";
|
|
GoodsNumberCerList = new ObservableCollection<GoodsNumberCer>();
|
|
|
|
|
|
foreach (var item in CertificateModel)
|
|
{
|
|
GoodsNumberCerList.Add(new GoodsNumberCer
|
|
{
|
|
CertificateModel = item.Copy(),
|
|
});
|
|
|
|
}
|
|
this.DataContext = this;
|
|
|
|
}
|
|
public bool IsSetSpuCertificate { get; set; }
|
|
public PackTaskService packTaskService { get; set; }
|
|
public CertificateModel[] CertificateModel { get; set; }
|
|
public CertificateModel SpuCertificateModel { get; set; }
|
|
|
|
public Action<CertificateModel[]> SaveResult { get; set; }
|
|
|
|
public ObservableCollection<GoodsNumberCer> GoodsNumberCerList { get; set; }
|
|
|
|
private void save_btn_Click(object sender, RoutedEventArgs e)
|
|
{
|
|
|
|
foreach (var item in GoodsNumberCerList)
|
|
{
|
|
if (string.IsNullOrEmpty(item.CertificateModel.ExcuteStander)
|
|
|| string.IsNullOrEmpty(item.CertificateModel.Shader) || string.IsNullOrEmpty(item.CertificateModel.BrandName)
|
|
|| string.IsNullOrEmpty(item.CertificateModel.Brand) || string.IsNullOrEmpty(item.CertificateModel.ProductShop)
|
|
|| string.IsNullOrEmpty(item.CertificateModel.ProductAdress))
|
|
{
|
|
new TipsWindow("参数出错!请重新填写!").Show();
|
|
return;
|
|
}
|
|
var standers = item.CertificateModel.ExcuteStander.Split(',', StringSplitOptions.RemoveEmptyEntries);
|
|
|
|
var resData = packTaskService.SaveCer(new CerRequest
|
|
{
|
|
Brand = item.CertificateModel.Brand,
|
|
BrandName = item.CertificateModel.BrandName,
|
|
ProductNo = item.CertificateModel.ProductNo,
|
|
SkuId = item.CertificateModel.SkuId,
|
|
ExcuteStander = item.CertificateModel.ExcuteStander,
|
|
LabelModel = (int)item.CertificateModel.LabelModel,
|
|
FactoryNumber = item.CertificateModel.FactoryNumber,
|
|
IsLogo = item.CertificateModel.IsLogo,
|
|
ProductAdress = item.CertificateModel.ProductAdress,
|
|
ProductShop = item.CertificateModel.ProductShop,
|
|
Shader = item.CertificateModel.Shader,
|
|
ApplyAge = item.CertificateModel.ApplyAge,
|
|
GoodsNumber = item.CertificateModel.GoodsNumber,
|
|
ProduceDate = item.CertificateModel.ProduceDate,
|
|
|
|
});
|
|
if (resData == null)
|
|
{
|
|
MessageBox.Show("网络异常!");
|
|
return;
|
|
}
|
|
|
|
|
|
if (!resData.Success)
|
|
{
|
|
MessageBox.Show(resData.Msg);
|
|
return;
|
|
}
|
|
|
|
item.CertificateModel.Id = resData.Data;
|
|
if (SaveResult != null) SaveResult(GoodsNumberCerList.Select(c => c.CertificateModel).ToArray());
|
|
|
|
|
|
}
|
|
this.Close();
|
|
}
|
|
|
|
private void SetSpuCer_Click(object sender, RoutedEventArgs e)
|
|
{
|
|
if (SpuCertificateModel == null)
|
|
{
|
|
SpuCertificateModel = new CertificateModel();
|
|
SpuCertificateModel.ProductNo = CertificateModel[0].ProductNo;
|
|
SpuCertificateModel.Brand = CertificateModel[0].Brand;
|
|
SpuCertificateModel.SkuId = CertificateModel[0].SkuId;
|
|
}
|
|
SetSpuCerWindow setSpuCerWindow = new SetSpuCerWindow();
|
|
setSpuCerWindow.LoadData(SpuCertificateModel, packTaskService);
|
|
|
|
setSpuCerWindow.SaveResult = s =>
|
|
{
|
|
SpuCertificateModel = s;
|
|
SetSpuCer.Content = "修改spu模板";//"设置spu模板" : "修改spu模板";
|
|
IsSetSpuCertificate = false;
|
|
};
|
|
|
|
setSpuCerWindow.Show();
|
|
}
|
|
|
|
long selectCer = -1;//tabcontrol 选中事件
|
|
private void InseartCer_Click(object sender, RoutedEventArgs e)
|
|
{
|
|
if (IsSetSpuCertificate)
|
|
{
|
|
new TipsWindow("无可用模板").Show();
|
|
return;
|
|
}
|
|
if (selectCer < 0)
|
|
{
|
|
new TipsWindow("未选中合格证").Show();
|
|
return;
|
|
}
|
|
var cer = GoodsNumberCerList.SingleOrDefault(g => g.CertificateModel.GoodsNumber == selectCer);
|
|
cer.CertificateModel.Brand = SpuCertificateModel.Brand;
|
|
cer.CertificateModel.BrandName = SpuCertificateModel.BrandName;
|
|
cer.CertificateModel.ExcuteStander = SpuCertificateModel.ExcuteStander;
|
|
cer.CertificateModel.FactoryNumber = SpuCertificateModel.FactoryNumber;
|
|
cer.CertificateModel.IsLogo = SpuCertificateModel.IsLogo;
|
|
cer.CertificateModel.LabelModel = SpuCertificateModel.LabelModel;
|
|
cer.CertificateModel.ProductAdress = SpuCertificateModel.ProductAdress;
|
|
cer.CertificateModel.ProductNo = SpuCertificateModel.ProductNo;
|
|
cer.CertificateModel.Shader = SpuCertificateModel.Shader;
|
|
cer.CertificateModel.ProductShop = SpuCertificateModel.ProductShop;
|
|
cer.CertificateModel.ApplyAge = SpuCertificateModel.ApplyAge;
|
|
cer.CertificateModel.ProduceDate = SpuCertificateModel.ProduceDate;
|
|
|
|
}
|
|
|
|
|
|
private void add_goodsnum_Click(object sender, RoutedEventArgs e)
|
|
{
|
|
int num = 0;
|
|
p:
|
|
num++;
|
|
int goodsNumber = num;
|
|
var gncer = GoodsNumberCerList.SingleOrDefault(g => g.CertificateModel.GoodsNumber == goodsNumber);
|
|
if (gncer != null) goto p;
|
|
GoodsNumberCerList.Add(new GoodsNumberCer
|
|
{
|
|
CertificateModel = new CertificateModel
|
|
{
|
|
GoodsNumber = goodsNumber,
|
|
BrandName = CertificateModel[0].BrandName,
|
|
Brand = CertificateModel[0].Brand,
|
|
SkuId = CertificateModel[0].SkuId,
|
|
ProductNo = CertificateModel[0].ProductNo,
|
|
SpuId = CertificateModel[0].SkuId,
|
|
|
|
}
|
|
});
|
|
tab.SelectedIndex = GoodsNumberCerList.Count - 1;
|
|
this.UpdateLayout();
|
|
}
|
|
|
|
|
|
|
|
private void tab_SelectionChanged(object sender, SelectionChangedEventArgs e)
|
|
{
|
|
var test = sender as HandyControl.Controls.TabControl;
|
|
if (test != null)
|
|
{
|
|
var select = test.SelectedItem as GoodsNumberCer;
|
|
if (select != null)
|
|
selectCer = select.CertificateModel.GoodsNumber;
|
|
}
|
|
}
|
|
}
|
|
|
|
public class GoodsNumberCer
|
|
{
|
|
/// <summary>
|
|
/// 配件序号
|
|
/// </summary>
|
|
// public int GoodsNumber { get; set; }
|
|
public CertificateModel CertificateModel { get; set; }
|
|
}
|
|
}
|
|
|