diff --git a/BBWY.Client/Helpers/MyPrintHelper.cs b/BBWY.Client/Helpers/MyPrintHelper.cs index 4de83b45..a08317e2 100644 --- a/BBWY.Client/Helpers/MyPrintHelper.cs +++ b/BBWY.Client/Helpers/MyPrintHelper.cs @@ -1,9 +1,12 @@ using BarcodeLib; +using BBWY.Client.Extensions; using BBWY.Client.Models; using System; using System.Collections.Generic; using System.Drawing; +using System.Drawing.Imaging; using System.Drawing.Printing; +using System.IO; using System.Linq; using System.Text; @@ -32,17 +35,17 @@ namespace BBWY.Client.Helpers case BarcodeLabelModel.精简模板: font = new Font("宋体", 10, System.Drawing.FontStyle.Regular); //SetBar(barCode, ref args, font, 15); - + SetBarSimplify(barCode, ref args, font); break; case BarcodeLabelModel.无型号模板: font = new Font("宋体", 10, System.Drawing.FontStyle.Regular); - SetBar(barCode, ref args, font,7); + SetBar(barCode, ref args, font, 7); break; default: break; } - + } @@ -152,6 +155,7 @@ namespace BBWY.Client.Helpers public static void PrintCertificate(ref PrintPageEventArgs args, CertificateModel certificate, Font font) { + args.Graphics.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic; args.Graphics.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality; var sige = args.Graphics.VisibleClipBounds;// 宽:236 高:157 打印可视化区域 @@ -170,11 +174,16 @@ namespace BBWY.Client.Helpers case CertificateLabelModel.无型号: SetCerNoXingHao(ref args, certificate, font); break; + case CertificateLabelModel.适用年龄: + SetCerNoXingHao(ref args, certificate, font); + break; default: break; } - + + + } private static void SetCerStander(ref PrintPageEventArgs args, CertificateModel certificate, Font font) @@ -212,8 +221,6 @@ namespace BBWY.Client.Helpers StringBuilder sb = new StringBuilder(); var excutes = certificate.ExcuteStander.Split(',', StringSplitOptions.RemoveEmptyEntries); - - int hangCount = excutes.Count() / 2 + excutes.Count() % 2;//获取行数 for (int i = 0; i < excutes.Count(); i++) @@ -250,36 +257,21 @@ namespace BBWY.Client.Helpers args.Graphics.DrawString(productStr, font, System.Drawing.Brushes.Black, rect); verHeight += 2 * smallSize.Height + heightSpace; } + var productShop = args.Graphics.MeasureString("生产商", font); + var adress = args.Graphics.MeasureString("地 址", font); - //var format = new StringFormat - //{ - // LineAlignment = StringAlignment.Far, - // // Alignment = StringAlignment.Center - //}; + var rect1 = new RectangleF(10 + productShop.Width - adress.Width, verHeight, 220, smallSize.Height * 3 + heightSpace); + args.Graphics.DrawString($"地 址: {certificate.ProductAdress}", font, System.Drawing.Brushes.Black, rect1); - var rect1 = new RectangleF(10, verHeight, 220, smallSize.Height * 3 + heightSpace); - args.Graphics.DrawString($"地址: {certificate.ProductAdress}", font, System.Drawing.Brushes.Black, rect1); - //certificate.ExcuteStander =; - - - //args.Graphics.DrawImage(img, 1, 68, 234, 60); } private static void SetCerNoXingHao(ref PrintPageEventArgs args, CertificateModel certificate, Font font) { + + int bigJiange = 20;//合格证与品牌的高度差 var heightSpace = 4;//所有行间隔高度 int standerSpace = 1;//执行标准之间的 - //if (certificate.IsLogo == 1)//含图标 - //{ - // string appPath = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location); - - // string path = appPath + $"/Resources/Images/3c.png"; - // Image image = Image.FromFile(path); - // args.Graphics.DrawImage(image, 190, 7, 28, 21); - // args.Graphics.DrawString(certificate.FactoryNumber, font, System.Drawing.Brushes.Black, 188, 28); - - //} var fontBig = new Font("宋体", 14, System.Drawing.FontStyle.Regular); string cerName = "合格证"; @@ -295,14 +287,28 @@ namespace BBWY.Client.Helpers verHeight += (smallSize.Height + heightSpace); args.Graphics.DrawString($"材质: {certificate.Shader}", font, System.Drawing.Brushes.Black, new PointF(10, verHeight)); + switch (certificate.LabelModel) + { + case CertificateLabelModel.标准无3c: + break; + case CertificateLabelModel.标准有3c: + break; + case CertificateLabelModel.无型号: + break; + case CertificateLabelModel.适用年龄: + + var twoWidth = args.Graphics.MeasureString("适用", font); + args.Graphics.DrawString($"适用年龄: {certificate.ApplyAge}", font, System.Drawing.Brushes.Black, new PointF(122 - twoWidth.Width, verHeight)); + break; + default: + break; + } + //args.Graphics.DrawString($"材质: {certificate.Shader}", font, System.Drawing.Brushes.Black, new PointF(122, verHeight)); StringBuilder sb = new StringBuilder(); var excutes = certificate.ExcuteStander.Split(',', StringSplitOptions.RemoveEmptyEntries); - - int hangCount = excutes.Count() / 2 + excutes.Count() % 2;//获取行数 - for (int i = 0; i < excutes.Count(); i++) { if (i % 2 == 0 && i > 0)//间隔两个换行 @@ -337,19 +343,28 @@ namespace BBWY.Client.Helpers args.Graphics.DrawString(productStr, font, System.Drawing.Brushes.Black, rect); verHeight += 2 * smallSize.Height + heightSpace; } + var productShop = args.Graphics.MeasureString("生产商", font); + var adress = args.Graphics.MeasureString("地 址", font); + + var rect1 = new RectangleF(10 + productShop.Width - adress.Width, verHeight, 220, smallSize.Height * 3 + heightSpace); + args.Graphics.DrawString($"地 址: {certificate.ProductAdress}", font, System.Drawing.Brushes.Black, rect1); + + - //var format = new StringFormat - //{ - // LineAlignment = StringAlignment.Far, - // // Alignment = StringAlignment.Center - //}; + } - var rect1 = new RectangleF(10, verHeight, 220, smallSize.Height * 3 + heightSpace); - args.Graphics.DrawString($"地址: {certificate.ProductAdress}", font, System.Drawing.Brushes.Black, rect1); - //certificate.ExcuteStander =; + public static void SaveImage(PrintPageEventArgs args) + { + args.Graphics.Save(); + // args.Graphics + //Bitmap bitmap2 = new Bitmap(236, 157); + //Graphics graphics2 = Graphics.FromImage(bitmap2); + //graphics2 = args.Graphics.Copy(); + + //bitmap2.Save("image.jpg", ImageFormat.Jpeg); - //args.Graphics.DrawImage(img, 1, 68, 234, 60); } + } } diff --git a/BBWY.Client/Models/APIModel/Request/CerRequest.cs b/BBWY.Client/Models/APIModel/Request/CerRequest.cs index 971e114b..02838f37 100644 --- a/BBWY.Client/Models/APIModel/Request/CerRequest.cs +++ b/BBWY.Client/Models/APIModel/Request/CerRequest.cs @@ -62,5 +62,10 @@ namespace BBWY.Client.Models.APIModel.Request /// 合格证模板 /// public int LabelModel { get; set; } + + /// + /// 适用年龄 + /// + public string ApplyAge { get; set; } } } diff --git a/BBWY.Client/Models/Enums.cs b/BBWY.Client/Models/Enums.cs index fbe5ae82..845c27cf 100644 --- a/BBWY.Client/Models/Enums.cs +++ b/BBWY.Client/Models/Enums.cs @@ -294,7 +294,8 @@ { 标准无3c = 0, 标准有3c = 1, - 无型号=2 + 无型号=2, + 适用年龄=3 } /// diff --git a/BBWY.Client/Models/PackTask/CertificateModel.cs b/BBWY.Client/Models/PackTask/CertificateModel.cs index 63df7554..b34b3d36 100644 --- a/BBWY.Client/Models/PackTask/CertificateModel.cs +++ b/BBWY.Client/Models/PackTask/CertificateModel.cs @@ -1,4 +1,5 @@ using System; +using System.Text; namespace BBWY.Client.Models { @@ -18,7 +19,7 @@ namespace BBWY.Client.Models /// skuid /// public string SkuId { get; set; } - + private string spuId; /// @@ -50,7 +51,17 @@ namespace BBWY.Client.Models /// /// 执行标准 /// - public string ExcuteStander { get => excuteStander; set { Set(ref excuteStander, value); } } + public string ExcuteStander { get => excuteStander; set { + Set(ref excuteStander, value); + GetExcuteStanderFormat(); + } } + + + private string excuteStanderFormat; + /// + /// 执行标准 (,=>换行) + /// + public string ExcuteStanderFormat { get => excuteStanderFormat; set { Set(ref excuteStanderFormat, value); } } private string productShop; /// @@ -91,8 +102,36 @@ namespace BBWY.Client.Models /// 工厂编号 /// public string FactoryNumber { get => factoryNumber; set { Set(ref factoryNumber, value); } } + private string applyAge; + /// + /// 适用年龄 + /// + public string ApplyAge { get => applyAge; set { Set(ref applyAge, value); } } + private CertificateLabelModel labelModel; public CertificateLabelModel LabelModel { get => labelModel; set { Set(ref labelModel, value); } } + + void GetExcuteStanderFormat() + { + StringBuilder sb = new StringBuilder(); + if (this.ExcuteStander.Contains(","))//有逗号就拆分 + { + var excutes = this.ExcuteStander.Split(',', StringSplitOptions.RemoveEmptyEntries); + for (int i = 0; i < excutes.Length; i++) + { + if (i % 2 == 0 && i > 0)//间隔两个换行 + { + sb.Append("\r\n"); + } + sb.Append(excutes[i]).Append(" "); + } + sb.Remove(sb.Length - 3, 3); + this.ExcuteStanderFormat = sb.ToString(); + return; + } + this.ExcuteStanderFormat = ExcuteStander; + } + } } diff --git a/BBWY.Client/Models/PackTask/PackTaskModel.cs b/BBWY.Client/Models/PackTask/PackTaskModel.cs index 06121e08..71acdd58 100644 --- a/BBWY.Client/Models/PackTask/PackTaskModel.cs +++ b/BBWY.Client/Models/PackTask/PackTaskModel.cs @@ -9,6 +9,7 @@ using System.Collections.Generic; using System.Drawing; using System.Linq; using System.Text; +using System.Windows; using System.Windows.Controls; using System.Windows.Input; @@ -54,6 +55,10 @@ namespace BBWY.Client.Models private void DeletedTask() { + MessageBoxResult result = MessageBox.Show("确定删除?", "提示", + MessageBoxButton.YesNo, + MessageBoxImage.Warning); + if (result != MessageBoxResult.Yes) return; packTaskService.DeletedTask(TaskId); if (ReflashTask != null) ReflashTask();//刷新界面 diff --git a/BBWY.Client/ViewModels/PackTask/CreatePackTaskViewModel.cs b/BBWY.Client/ViewModels/PackTask/CreatePackTaskViewModel.cs index c453d258..2816052f 100644 --- a/BBWY.Client/ViewModels/PackTask/CreatePackTaskViewModel.cs +++ b/BBWY.Client/ViewModels/PackTask/CreatePackTaskViewModel.cs @@ -571,6 +571,7 @@ namespace BBWY.Client.ViewModels.PackTask ProductNo = SpuCertificateModel.ProductNo, Shader = SpuCertificateModel.Shader, ProductShop = SpuCertificateModel.ProductShop, + ApplyAge = SpuCertificateModel.ApplyAge, }; } @@ -611,7 +612,10 @@ namespace BBWY.Client.ViewModels.PackTask IsLogo = SpuCertificateModel.IsLogo, ProductAdress = SpuCertificateModel.ProductAdress, ProductShop = SpuCertificateModel.ProductShop, - Shader = SpuCertificateModel.Shader + Shader = SpuCertificateModel.Shader, + SkuId = SpuCertificateModel.SkuId, + ApplyAge = SpuCertificateModel.ApplyAge, + }); @@ -766,9 +770,8 @@ namespace BBWY.Client.ViewModels.PackTask IsLogo = CertificateModel.IsLogo, ProductAdress = CertificateModel.ProductAdress, ProductShop = CertificateModel.ProductShop, - Shader = CertificateModel.Shader - - + Shader = CertificateModel.Shader, + ApplyAge = CertificateModel.ApplyAge, }); if (resData == null || !resData.Success) { diff --git a/BBWY.Client/Views/MainWindow.xaml b/BBWY.Client/Views/MainWindow.xaml index 15d3944f..2fc7d381 100644 --- a/BBWY.Client/Views/MainWindow.xaml +++ b/BBWY.Client/Views/MainWindow.xaml @@ -26,7 +26,7 @@ - + diff --git a/BBWY.Client/Views/PackTask/LookCerWindow.xaml b/BBWY.Client/Views/PackTask/LookCerWindow.xaml index 7e92d212..5dc12ba4 100644 --- a/BBWY.Client/Views/PackTask/LookCerWindow.xaml +++ b/BBWY.Client/Views/PackTask/LookCerWindow.xaml @@ -29,8 +29,35 @@ Background="{StaticResource Border.Background}"> - + + + + + + + + + + + + + + + + + + + + + + + + + @@ -49,13 +76,13 @@ + Height="50" Text="{Binding ExcuteStanderFormatFormat}" Width="296" VerticalAlignment="Top" HorizontalAlignment="Left" Margin="63,148,0,0"/> - - + @@ -78,13 +105,14 @@ + Text="{Binding ExcuteStanderFormat}" Height="40" Width="296" VerticalAlignment="Top" HorizontalAlignment="Left" Margin="63,153,0,0"/> - - + + @@ -110,13 +138,13 @@ + Height="50" Text="{Binding ExcuteStanderFormat}" Width="296" VerticalAlignment="Top" HorizontalAlignment="Left" Margin="63,148,0,0"/> - - + diff --git a/BBWY.Client/Views/PackTask/LookCerWindow.xaml.cs b/BBWY.Client/Views/PackTask/LookCerWindow.xaml.cs index 9a7dcd2a..16c2bfa8 100644 --- a/BBWY.Client/Views/PackTask/LookCerWindow.xaml.cs +++ b/BBWY.Client/Views/PackTask/LookCerWindow.xaml.cs @@ -40,24 +40,11 @@ namespace BBWY.Client.Views.PackTask ProductShop = certificate.ProductShop, Shader = certificate.Shader, SkuId = certificate.SkuId, - Reseller = certificate.Reseller + Reseller = certificate.Reseller, + ApplyAge = certificate.ApplyAge, }; - StringBuilder sb = new StringBuilder(); - if (data.ExcuteStander.Contains(","))//有逗号就拆分 - { - var excutes = data.ExcuteStander.Split(',', StringSplitOptions.RemoveEmptyEntries); - for (int i = 0; i < excutes.Count(); i++) - { - if (i % 2 == 0 && i > 0)//间隔两个换行 - { - sb.Append("\r\n"); - } - sb.Append(excutes[i]).Append(" "); - } - sb.Remove(sb.Length - 3, 3); - data.ExcuteStander = sb.ToString(); - } + this.DataContext = data; } } diff --git a/BBWY.Client/Views/PackTask/PrintWindow.xaml b/BBWY.Client/Views/PackTask/PrintWindow.xaml index b34a2802..d8606cc9 100644 --- a/BBWY.Client/Views/PackTask/PrintWindow.xaml +++ b/BBWY.Client/Views/PackTask/PrintWindow.xaml @@ -42,7 +42,7 @@ --> - + @@ -108,73 +108,39 @@ - + - - - - + @@ -192,7 +158,7 @@ + Height="50" Text="{Binding ExcuteStanderFormat}" Width="296" VerticalAlignment="Top" HorizontalAlignment="Left" Margin="63,148,0,0"/> @@ -204,7 +170,7 @@ - + @@ -221,7 +187,7 @@ + Text="{Binding ExcuteStanderFormat}" Height="40" Width="296" VerticalAlignment="Top" HorizontalAlignment="Left" Margin="63,153,0,0"/> @@ -236,7 +202,7 @@ - + @@ -253,7 +219,7 @@ + Height="50" Text="{Binding ExcuteStanderFormat}" Width="296" VerticalAlignment="Top" HorizontalAlignment="Left" Margin="63,148,0,0"/> @@ -263,7 +229,7 @@ Height="44" Text="{Binding ProductAdress}" Width="296" VerticalAlignment="Top" HorizontalAlignment="Left" Margin="63,241,0,0"/> - + diff --git a/BBWY.Client/Views/PackTask/PrintWindow.xaml.cs b/BBWY.Client/Views/PackTask/PrintWindow.xaml.cs index 54766eae..68b48288 100644 --- a/BBWY.Client/Views/PackTask/PrintWindow.xaml.cs +++ b/BBWY.Client/Views/PackTask/PrintWindow.xaml.cs @@ -159,11 +159,13 @@ namespace BBWY.Client.Views.PackTask - #if DEBUG +#if DEBUG //打印 纵向打印 会模糊 - args.PageSettings.PrinterSettings.DefaultPageSettings.PaperSize = new System.Drawing.Printing.PaperSize("Custom", 236, 157); - args.PageSettings.PrinterSettings.DefaultPageSettings.Landscape = true; - #endif + //args.PageSettings.PrinterSettings.DefaultPageSettings.PaperSize = new System.Drawing.Printing.PaperSize("Custom", 236, 157); + //args.PageSettings.PrinterSettings.DefaultPageSettings.Landscape = true; + + Bitmap bitmap = new Bitmap(236,157); +#endif Font font = new Font("宋体", 6, System.Drawing.FontStyle.Regular); if (BarCodeModel != null) diff --git a/BBWY.Client/Views/PackTask/SetCerControl.xaml b/BBWY.Client/Views/PackTask/SetCerControl.xaml index 37bd4d01..d6627082 100644 --- a/BBWY.Client/Views/PackTask/SetCerControl.xaml +++ b/BBWY.Client/Views/PackTask/SetCerControl.xaml @@ -6,7 +6,7 @@ xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls" xmlns:local="clr-namespace:BBWY.Client.Views.PackTask" xmlns:cmodel="clr-namespace:BBWY.Client.Models" - mc:Ignorable="d" + mc:Ignorable="d" Background="White" d:DesignHeight="700" d:DesignWidth="820"> @@ -92,6 +92,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/BBWY.Server.Business/PlatformSDK/QuanTanBusiness.cs b/BBWY.Server.Business/PlatformSDK/QuanTanBusiness.cs index ed770179..ce35a63d 100644 --- a/BBWY.Server.Business/PlatformSDK/QuanTanBusiness.cs +++ b/BBWY.Server.Business/PlatformSDK/QuanTanBusiness.cs @@ -105,6 +105,7 @@ namespace BBWY.Server.Business userAccount = createOnlinePurchaseOrderRequest.AppToken, cartIds = createOnlinePurchaseOrderRequest.Extensions, autoPay= createOnlinePurchaseOrderRequest.AutoPay, + remark=createOnlinePurchaseOrderRequest.Remark, receipt = new QuanTanCreateOrderReceipt() { province = createOnlinePurchaseOrderRequest.Consignee.Province, diff --git a/QuanTan.SDK/Client/BaseClient.cs b/QuanTan.SDK/Client/BaseClient.cs index 53011e2f..aefe31a4 100644 --- a/QuanTan.SDK/Client/BaseClient.cs +++ b/QuanTan.SDK/Client/BaseClient.cs @@ -27,12 +27,6 @@ namespace QuanTan.SDK.Client var randomNum = new Random(Guid.NewGuid().GetHashCode()).Next(100000, 999999).ToString(); if (param == null) param = new object[] { }; - -#if DEBUG - appId = "BBWY2023022001"; - appSecret = "908e131365d5448ca651ba20ed7ddefe"; -#endif - var paramStr = JsonConvert.SerializeObject(param); var jmStr = JsonConvert.SerializeObject(new QuanTanSignParam() @@ -40,7 +34,6 @@ namespace QuanTan.SDK.Client //appId = appId, appId = appId, appSecret = appSecret,// - callTime = callTime, _params = paramStr, randomNum = randomNum diff --git a/QuanTan.SDK/Model/Request/Order/QuanTanCreateOrderRequest.cs b/QuanTan.SDK/Model/Request/Order/QuanTanCreateOrderRequest.cs index d4a3c485..0887828a 100644 --- a/QuanTan.SDK/Model/Request/Order/QuanTanCreateOrderRequest.cs +++ b/QuanTan.SDK/Model/Request/Order/QuanTanCreateOrderRequest.cs @@ -13,6 +13,8 @@ public string extended { get; set; } public string autoPay { get; set; } + + public string remark { get; set; } } public class QuanTanCreateOrderReceipt : QuanTanPreviewOrderReceipt