- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我关注了How to create a custom grid from scratch创建自定义销售订单。管理员正在创建供应商,供应商将上传产品。我想限制供应商,使他们只能看到对自己产品的订单。有一种新模型 jbmarketplace/jbmarketplaceproducts,其中供应商创建产品时存储了供应商 user_id 和 product_id。但是当我过滤时它给出了 SQLSTATE[42S22]: Column not found: 1054 Unknown column 'product_id' in 'where clause'。但是 product_id 在 sales_flat_order_item 表中可用。
protected function _prepareCollection()
{
// Get current logged in user
$current_user = Mage::getSingleton( 'admin/session' )->getUser();
// Limit only for vendors
if ( $current_user->getRole()->getRoleId() == Mage::getStoreConfig( 'jbmarketplace/jbmarketplace/vendors_role' ) ) {
// echo( $current_user->getUserId());
$my_products = Mage::getModel( 'jbmarketplace/jbmarketplaceproducts' )
->getCollection()
->addFieldToSelect( 'product_id' )
->addFieldToFilter( 'user_id', $current_user->getUserId() )
->load();
$my_product_array = array();
foreach ( $my_products as $product ) {
$my_product_array[] = $product->getProductId();
$entity = Mage::getModel('sales/order_item')
->getCollection()
->addFieldToSelect('order_id')
->addFieldToFilter('product_id',$my_product_array)
->load();
// echo $entity->getSelect();// will print sql query
}
$d=$entity->getData();
if($d){
$collection = Mage::getResourceModel('sales/order_collection')
// My code
->addFieldToFilter('entity_id', $d)
->join(array('a' => 'sales/order_address'), 'main_table.entity_id = a.parent_id AND a.address_type != \'billing\'', array(
'city' => 'city',
'country_id' => 'country_id'
))
// ->join(Mage::getConfig()->getTablePrefix().'catalog_product_entity_varchar', 'main_table.products_id ='.Mage::getConfig()->getTablePrefix().'catalog_product_entity_varchar.entity_id',array('value'))
->join(array('c' => 'customer/customer_group'), 'main_table.customer_group_id = c.customer_group_id', array(
'customer_group_code' => 'customer_group_code'
))
->addExpressionFieldToSelect(
'fullname',
'CONCAT({{customer_firstname}}, \' \', {{customer_lastname}})',
array('customer_firstname' => 'main_table.customer_firstname', 'customer_lastname' => 'main_table.customer_lastname'))
->addExpressionFieldToSelect(
'products',
'(SELECT GROUP_CONCAT(\' \', x.name)
FROM sales_flat_order_item x
WHERE {{entity_id}} = x.order_id
AND x.product_type != \'configurable\')',
array('entity_id' => 'main_table.entity_id')
)
;
parent::_prepareCollection();
$this->setCollection($collection);
return $this;
}
else
{
echo("Current there are no purchases on your product. Thank you");
}
}
else{
echo("Please Login as Vendor and you will see orders on your products.<br>");
// $current_user = Mage::getSingleton( 'admin/session' )->getUser()->getUserId();
// echo($current_user);
}
最佳答案
这是对我有用的代码。
protected function _prepareCollection()
{
// Get current logged in user
$current_user = Mage::getSingleton( 'admin/session' )->getUser();
// Limit only for vendors
if ( $current_user->getRole()->getRoleId() == Mage::getStoreConfig( 'jbmarketplace/jbmarketplace/vendors_role' ) ) {
// echo( $current_user->getUserId());
$my_products = Mage::getModel( 'jbmarketplace/jbmarketplaceproducts' )
->getCollection()
->addFieldToSelect( 'product_id' )
->addFieldToFilter( 'user_id', $current_user->getUserId() )
->load();
$my_product_array = array();
foreach ( $my_products as $product ) {
$my_product_array[] = $product->getProductId();
$entity = Mage::getModel('sales/order_item')
->getCollection()
->addFieldToSelect('order_id')
->addFieldToFilter('product_id',$my_product_array)
->load();
// echo $entity->getSelect();// will print sql query
}
$d=$entity->getData();
if($d){
$collection = Mage::getResourceModel('sales/order_collection')
// My code
->addFieldToFilter('entity_id', $d)
->join(array('a' => 'sales/order_address'), 'main_table.entity_id = a.parent_id AND a.address_type != \'billing\'', array(
'city' => 'city',
'country_id' => 'country_id'
))
// ->join(Mage::getConfig()->getTablePrefix().'catalog_product_entity_varchar', 'main_table.products_id ='.Mage::getConfig()->getTablePrefix().'catalog_product_entity_varchar.entity_id',array('value'))
->join(array('c' => 'customer/customer_group'), 'main_table.customer_group_id = c.customer_group_id', array(
'customer_group_code' => 'customer_group_code'
))
->addExpressionFieldToSelect(
'fullname',
'CONCAT({{customer_firstname}}, \' \', {{customer_lastname}})',
array('customer_firstname' => 'main_table.customer_firstname', 'customer_lastname' => 'main_table.customer_lastname'))
->addExpressionFieldToSelect(
'products',
'(SELECT GROUP_CONCAT(\' \', x.name)
FROM sales_flat_order_item x
WHERE {{entity_id}} = x.order_id
AND x.product_type != \'configurable\')',
array('entity_id' => 'main_table.entity_id')
)
;
parent::_prepareCollection();
$this->setCollection($collection);
return $this;
}
else
{
echo("Current there are no purchases on your product. Thank you");
}
}
else{
echo("Please Login as Vendor and you will see orders on your products.<br>");
// $current_user = Mage::getSingleton( 'admin/session' )->getUser()->getUserId();
// echo($current_user);
}
}
关于magento - 根据 product_id 或 user_id(供应商)过滤订单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24365892/
我在 MySQL 中遇到错误:错误代码:1054。“on 子句”中的未知列“s.Product_id” 出现在: SELECT c.customer_ID, p.Product_id, p.Produ
您好,我的数据库中有一张已售出的表,我的表如下所示: +-----------+---------------------+---------+---------+ | id | pro
查看 magento 1.5 架构,我似乎无法弄清楚 product_id 与 entity_id 的关系。 在我所有的测试用例中,我可以验证 product_id 和 entity_id 是否相等(
SELECT product_id,time_id,customer_id,promotion_id,store_id,store_sales,store_cost,SUM(unit_sales) t
我刚看到 opencart 的一些扩展可以更新产品列表页面的产品,我在我的 opencart 项目中尝试了它,很有趣...现在我开始为我的 opencart 项目开发一个新的扩展,即: Insert
我有一张 table -> table_product_categories - "product_id", "category_id" 我想为每个类别添加多个产品 ID(在范围内)。我该怎么做? 我
如何使用产品 ID 获取产品描述或产品对象。 $order = new WC_Order($order_id); foreach ($order->get_items() as $item) {
我的变量名,数据库表都是对的,我得到这样的错误; MySql.Data.MySqlClient.MySqlException: 'There is already an open DataReader
正如主题所说,我在添加产品时遇到了问题(通过使用产品类别)。一切正常,但即使我指定 $product->id = 1234;它不会用这个 id 保存它,它只是在数据库中自动增加产品。但我真的需要将我自
创建了一个功能,让客户在达到特定数量时将产品添加到购物车。 客户达到级别 3 并添加产品的示例。 // Bonus products $product_1 = '4751'; $product_2 =
我正在尝试在 jQuery 中创建一个多维数组。 var parent = $(this).parents(".product:first").find(".decking_var_content >
我想在 Magento 的类别列表页面上显示查看次数。这些数据看起来过去可以通过 reports/product_collection 访问,但我找不到正确访问它的方法。 基本上,我想提供一个产品 I
我关注了How to create a custom grid from scratch创建自定义销售订单。管理员正在创建供应商,供应商将上传产品。我想限制供应商,使他们只能看到对自己产品的订单。有一
假设我有一个产品,它有很多图片。我使用了 Dropzone js,如果我上传图片那么它很好但是如果想用 product_id 存储然后它传递空值。没有传递任何值(value)它的工作正常。那么我怎样才
我的 OpenCart 商店 url = http://localhost/Casual?product_id=83983我正在使用 seo_url,我想让我的 url 看起来像 url = http
我有一个HDFS表A,写成如下格式 user product U1 101 U1 102 U1 103 U2 101 U2 104 U3
我目前正在使用 Stripe Webhooks 在用户为产品付款时收到通知。这工作正常。从付款意图我可以得到视讯和 客户 目的。但我没有找到获得 的方法product_id 或 price_id 用户
我已经阅读了文档并观看了视频,但这仍然让我感到困惑。 我在我的 Android 应用程序中使用了 PRODUCT_ID 并将其发送到 Google Cloud Messaging (GCM),以便它返
当我想将 user_id 添加到 carts 时出现此错误 Cannot add or update a child row: a foreign key constraint fails (`arm
我试图通过在删除按钮中传递 id 来从数据库中删除产品。该值不是各自的 product_id,而是像第一个产品 ID 1 被删除然后 2 一样传递。我要删除的产品没有传递用于删除的 ID。表单在pos
我是一名优秀的程序员,十分优秀!