$parameter['merchant_id'], 'a.status' => array('in', '0,1'), 'g.m_goods_id' => array('gt', 0), 'g.status' => array('in', '0,1'), 's.status' => array('in', '0,1') ); if (!empty($parameter['searchText'])) { $where['a.goods_name|a.goods_number|a.goods_code'] = array('like', '%' . trim($parameter['searchText']) . '%'); } if (!empty($parameter['store_id'])) { $where['g.store_id'] = $parameter['store_id']; } return $where; } /** * 门店同步商户普通商品的库存报表(已作废) * @param $parameter * @return mixed */ public function getStoreSyncGoodsInventoryList($parameter) { if (empty($parameter)) { return []; } $where = $this->getStoreSyncGoodsInventoryTerm($parameter); $where['a.attribute_state'] = 1; $page = $parameter['page'] ? $parameter['page'] : 1; $limit = $parameter['limit'] ? $parameter['limit'] : 10; $list = $this->alias('a') ->join('ls_retail_goods as g on a.goods_id = g.m_goods_id') ->join('ls_retail_store_sale_goods as s on g.id=s.goods_id') ->field('sum(s.goods_num) as goods_num,a.goods_id as merchant_goods_id,a.goods_name,a.goods_number,a.goods_code,g.id as store_goods_id,a.company,s.attribute_state') ->where($where) ->page($page, $limit) ->order('a.id desc') ->group('a.goods_id') ->select(); return $list; } /** * 门店同步商户普通商品的库存报表(已作废) * @param $parameter * @return mixed */ public function getStoreSyncGoodsInventoryCount($parameter) { if (empty($parameter)) { return 0; } $where = $this->getStoreSyncGoodsInventoryTerm($parameter); $where['a.attribute_state'] = 1; $count = $this->alias('a') ->join('ls_retail_goods as g on a.goods_id = g.m_goods_id') ->join('ls_retail_store_sale_goods as s on g.id=s.goods_id') ->where($where) ->count('distinct(a.goods_id)'); return $count; } /** * 门店同步商户规格商品的库存报表的查询条件 * @param $parameter * @return array */ public function getStoreSyncGoodsSkuInventoryTerm($parameter) { $where = array( 'a.merchant_id' => $parameter['merchant_id'], 'a.status' => array('in', '0,1'), 's.sku_mgoods_id' => array('gt', 0), 's.state' => 0, ); if (!empty($parameter['searchText'])) { $where['a.goods_name|a.sku_name|a.goods_number|a.goods_code|a.sku_goods_number|a.sku_code'] = array('like', '%' . trim($parameter['searchText']) . '%'); } if (!empty($parameter['store_id'])) { $where['s.store_id'] = $parameter['store_id']; } return $where; } /** * 门店同步商户规格商品的库存报表(已作废) * @param $parameter * @return array */ public function getStoreSyncGoodsSkuInventoryList($parameter) { if (empty($parameter)) { return []; } $where = $this->getStoreSyncGoodsSkuInventoryTerm($parameter); $where['a.attribute_state'] = 2; $page = $parameter['page'] ? $parameter['page'] : 1; $limit = $parameter['limit'] ? $parameter['limit'] : 10; $list = $this->alias('a') ->join('ls_retail_sku_goods as s on a.sku_id = s.sku_mgoods_id') ->field('a.goods_id as merchant_goods_id,a.sku_id as merchant_goods_sku_id,a.goods_name,a.sku_name,a.sku_goods_number,a.sku_code,a.company') ->where($where) ->page($page, $limit) ->order('a.id desc') ->group('a.sku_id') ->select(); return $list; } /** * 门店同步商户规格商品的库存报表 * @param $parameter * @return array */ public function getStoreSyncGoodsSkuInventoryCount($parameter) { if (empty($parameter)) { return []; } $where = $this->getStoreSyncGoodsSkuInventoryTerm($parameter); $where['a.attribute_state'] = 2; $count = $this->alias('a') ->join('ls_retail_sku_goods as s on a.sku_id = s.sku_mgoods_id') ->where($where) ->count('distinct(a.sku_id)'); return $count; } }