بسته

نمایه: هنگامه

Avatar
آمار
  • 19
  • پنجشنبه, 30 دی 1400 11:12 ق.ظ

protected virtual async Task PrintProductsAsync(int vendorId, Language lang, Font titleFont, Document doc, Order order, Font font, Font attributesFont)
        {
            var productsHeader = new PdfPTable(1)
            {
                RunDirection = GetDirection(lang),
                WidthPercentage = 100f
            };
            var cellProducts = await GetPdfCellAsync("PDFInvoice.Product(s)", lang, titleFont);
            cellProducts.Border = Rectangle.NO_BORDER;
            productsHeader.AddCell(cellProducts);
            doc.Add(productsHeader);
            doc.Add(new Paragraph(" "));

            //a vendor should have access only to products
            var orderItems = await _orderService.GetOrderItemsAsync(order.Id, vendorId: vendorId);

            var count = 5 + (_catalogSettings.ShowSkuOnProductDetailsPage ? 1 : 0)
                        + (_vendorSettings.ShowVendorOnOrderDetailsPage ? 1 : 0);

            var productsTable = new PdfPTable(count)
            {
                RunDirection = GetDirection(lang),
                WidthPercentage = 100f
            };

            var widths = new Dictionary<int, int[]>
            {
                { 5, new[] { 20, 40, 15, 10, 15 } },
                { 6, new[] { 20, 35, 15, 10, 10, 10 } },
                { 7, new[] { 20, 30, 10, 10, 10, 10, 10 } }
            };

            productsTable.SetWidths(lang.Rtl ? widths[count].Reverse().ToArray() : widths[count]);

            //product image
            var cellProductItemPicture = await GetPdfCellAsync("PDFInvoice.ProductImage", lang, font);
            cellProductItemPicture.BackgroundColor = BaseColor.LightGray;
            cellProductItemPicture.HorizontalAlignment = Element.ALIGN_CENTER;
            productsTable.AddCell(cellProductItemPicture);

            //product name
            var cellProductItem = await GetPdfCellAsync("PDFInvoice.ProductName", lang, font);
            cellProductItem.BackgroundColor = BaseColor.LightGray;
            cellProductItem.HorizontalAlignment = Element.ALIGN_CENTER;
            productsTable.AddCell(cellProductItem);

            //SKU
            if (_catalogSettings.ShowSkuOnProductDetailsPage)
            {
                cellProductItem = await GetPdfCellAsync("PDFInvoice.SKU", lang, font);
                cellProductItem.BackgroundColor = BaseColor.LightGray;
                cellProductItem.HorizontalAlignment = Element.ALIGN_CENTER;
                productsTable.AddCell(cellProductItem);
            }

            //Vendor name
            if (_vendorSettings.ShowVendorOnOrderDetailsPage)
            {
                cellProductItem = await GetPdfCellAsync("PDFInvoice.VendorName", lang, font);
                cellProductItem.BackgroundColor = BaseColor.LightGray;
                cellProductItem.HorizontalAlignment = Element.ALIGN_CENTER;
                productsTable.AddCell(cellProductItem);
            }

            //price
            cellProductItem = await GetPdfCellAsync("PDFInvoice.ProductPrice", lang, font);
            cellProductItem.BackgroundColor = BaseColor.LightGray;
            cellProductItem.HorizontalAlignment = Element.ALIGN_CENTER;
            productsTable.AddCell(cellProductItem);

            //qty
            cellProductItem = await GetPdfCellAsync("PDFInvoice.ProductQuantity", lang, font);
            cellProductItem.BackgroundColor = BaseColor.LightGray;
            cellProductItem.HorizontalAlignment = Element.ALIGN_CENTER;
            productsTable.AddCell(cellProductItem);

            //total
            cellProductItem = await GetPdfCellAsync("PDFInvoice.ProductTotal", lang, font);
            cellProductItem.BackgroundColor = BaseColor.LightGray;
            cellProductItem.HorizontalAlignment = Element.ALIGN_CENTER;
            productsTable.AddCell(cellProductItem);

            var vendors = _vendorSettings.ShowVendorOnOrderDetailsPage ?

2 ماه پیش

سلام
کد قابل اجرا در SQL Query:
DELETE Customer
FROM Customer
LEFT OUTER JOIN [Order] ON Customer.Id = [Order].CustomerId
WHERE ([Order].Id IS NULL) AND (Customer.Email IS NULL)

2 ماه پیش

سلام
در ناپ کامرس پیش فرض وجود ندارد ولی در نسخه فروشگاهی پیشرفته ناپ شاپ وجود دارد.
این امکان بصورت پلاگین مجزا نیست و نیازمند خرید کل پکیج فروشگاهی ناپ شاپ است.

2 ماه پیش
Noindex و Nofollow

سلام
robots.custom.txt را به پوشه اصلی پروژه nopCommerce اضافه کنید و مسیرهای غیر مجاز را اضافه کنید که نیازی به دنبال کردن ندارند.
یا می توانید مسیرهای غیر مجاز خود را به سورس کد nopcommerce در اینجا اضافه کنید

2 ماه پیش

@model VendorModel
@using Nop.Core.Domain.Seo
@inject Nop.Core.IWebHelper webHelper
@inject SeoSettings seoSettings
@using Nop.Services.Customers
@using Nop.Services.Vendors
@{
    Layout = "_ColumnsTwo";

    int vendorCustomerId = 0;
    var iVendorService = Nop.Core.Infrastructure.EngineContext.Current.Resolve<IVendorService>();
    var iCustomerSerivce = Nop.Core.Infrastructure.EngineContext.Current.Resolve<ICustomerService>();
    var vendor = (await iVendorService.GetAllVendorsAsync()).Where(v => v.Name == Model.Name).FirstOrDefault();
    if (vendor != null)
    {
        var customer = (await iCustomerSerivce.GetAllCustomersAsync()).Where(c => c.VendorId == vendor.Id).FirstOrDefault();
        if (customer != null)
            vendorCustomerId = customer.Id;
    }

بعدش می توانید این را هم انجام دهید:
@if (vendorCustomerId != 0)
{
    <a href="/sendpm/@vendorCustomerId">send message to this user</a>
}

3 ماه پیش

نه این سورس کد است.
باید نسخه ساخته شده دایرکتوری Shipping.Fedex را در \Plugins قرار دهید
یا فایل Zip را با استفاده از تابع Upload Plugins در Admin آپلود کنید.

3 ماه پیش

سلام.
آیا نسخه پلاگین برای v4.5 است؟
فایل plugins.json را در افزونه بررسی کنید.
باید"Supported Versions": [ "4.50" ] باشد.
اگر ورژن صحیح است، دکمه Reload list of Pluigns را امتحان کنید.
اگر جواب نداد، برنامه را Restart کنید.

3 ماه پیش

سلام
شما سورس کد اصلی را تغییر نمی دهید
اما برای ایجاد پلاگین با استفاده از سورس کد به عنوان یک پروژه جداگانه، باید از ویژوال استودیو استفاده کنید
سپس راه حل را بسازید
سپس افزونه را نصب کنید
یا می توانید دکمه حذف را ایجاد کرده و از طریق ویجت در product box بارگذاری کنید. و آن دکمه را فقط در صورتی نمایش دهید که کاربر فعلی وارد شده فروشنده باشد و محصول از فروشنده دیگری نباشد.

3 ماه پیش

سلام
شما نمی توانید آن را انجام دهید. شما باید Domain، SchemaMigration، BaseNameCompatibility خود را در داخل افزونه خود تعریف کنید. جدول جدیدی برای شما ایجاد می کند. با استفاده از فیلتر عمل می توانید داده های فرم اضافی را دریافت کرده و در جدول سفارشی خود قرار دهید. شما باید داده های سفارشی را از طریق مولفه view از طریق ویجت نشان دهید. روش دیگر می توانید از جدول ویژگی های عمومی برای ذخیره داده های سفارشی استفاده کنید.

4 ماه پیش

1. نقش خاصی را به مشتری اختصاص دهید.

2. اضافه کردن نیاز تخفیف به نقش مشتری خاص از admin -> تبلیغات -> افزودن تخفیف جدید. الزاماتی که تعیین میکنید باید به نقش مشتری اختصاص داده شود.

4 ماه پیش
دسته بندی ها