بسته

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

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

از Web API اصلی ناپ کامرس که در سایت ناپ شاپ ارائه می شود استفاده کنید

یک سال پیش

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 ?

یک سال پیش

سلام
کد قابل اجرا در 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)

یک سال پیش

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

یک سال پیش
Noindex و Nofollow

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

یک سال پیش

@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>
}

یک سال پیش

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

یک سال پیش

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

یک سال پیش

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

یک سال پیش

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

یک سال پیش
دسته بندی ها