model('shop')->getList('shop_id,node_type,name,node_id', array('active'=>'true'), 0, -1); $data = array(); foreach($shop_list as $shop){ $sdata = array(); $this->shop_id = $shop['shop_id']; foreach($this->field as $field){ $method = 'get_'.$field; if(method_exists($this,$method)){ $value = $this->$method(); $sdata[$field] = $value == '' ? 0 : $value; } } $data[] = $sdata; } return $data; } /** * 来源标识 * * @return number */ public function get_enumproductid(){ return 33; } /** * SHOPEXID * * @return number */ public function get_shopexid(){ return base_enterprise::ent_id(); } /** * EMAIL * * @return string */ public function get_email(){ return kernel::single('ome_collection_request')->get_manage_email(); } /** * 绑定店铺数 * * @return number */ public function get_bingingshopnumber(){ $sql = 'SELECT COUNT(*) AS _count FROM sdb_ome_shop WHERE node_id != \'\''; $result = kernel::database()->selectrow($sql); return $result['_count']; } /** * 系统用户数 * * @return number */ public function get_accountmember(){ $sql = 'SELECT COUNT(*) AS _count FROM sdb_pam_account'; $result = kernel::database()->selectrow($sql); return $result['_count']; } /** * 系统角色数 * * @return number */ public function get_accountroleamount(){ $sql = 'SELECT COUNT(*) AS _count FROM sdb_desktop_roles'; $result = kernel::database()->selectrow($sql); return $result['_count']; } /** * 当天售卖SKU数 * * @return number */ public function get_skunumber(){ $sql = 'SELECT COUNT(*) AS _count FROM sdb_ome_order_items WHERE order_id in( SELECT order_id FROM sdb_ome_orders WHERE createtime >= '.$this->beginTime.' AND createtime <= '.$this->endTime.' )'; $result = kernel::database()->selectrow($sql); return $result['_count']; } /** * 当天库存数 * * @return number */ public function get_inventorynumber(){ $sql = 'SELECT (SUM(store)-SUM(store_freeze)) AS _count FROM sdb_ome_branch_product'; $result = kernel::database()->selectrow($sql); return $result['_count']; } /** * 仓库数量 * * @return number */ public function get_storageamount(){ $sql = 'SELECT COUNT(*) AS _count FROM sdb_ome_branch'; $result = kernel::database()->selectrow($sql); return $result['_count']; } /** * 已付款订单量(根据支付时间范围) * * @return number */ public function get_orderamount(){ $sql = 'SELECT COUNT(*) AS _count FROM sdb_ome_orders WHERE shop_id = \''.$this->shop_id.'\' AND paytime >= '.$this->beginTime.' AND paytime <='.$this->endTime; $result = kernel::database()->selectrow($sql); return $result['_count'] ? $result['_count'] : 0; } /** * 已发货订单量(根据发货时间范围) * * @return number */ public function get_shippedorder(){ $sql = sprintf('SELECT count( distinct di.order_id ) AS _count FROM sdb_ome_delivery AS d LEFT JOIN sdb_ome_delivery_items_detail AS di ON (d.delivery_id=di.delivery_id) WHERE d.delivery_time BETWEEN "%s" AND "%s" AND d.shop_id ="%s" AND process="true"',$this->beginTime,$this->endTime,$this->shop_id); $result = kernel::database()->selectrow($sql); return $result['_count']; } /** * 退换货订单量 * * @return number */ public function get_customerserviceorder(){ $sql = sprintf('SELECT count(distinct order_id) AS _count FROM sdb_ome_reship WHERE t_end BETWEEN "%s" AND "%s" AND is_check="7"',$this->beginTime,$this->endTime); $result = kernel::database()->selectrow($sql); return $result['_count']; } /** * 已支付订单总金额/已支付订单数(客单价) * * @return number */ public function get_customerunit(){ $orderamount = $this->get_orderamount(); $achievement = $this->get_achievement(); if($orderamount == 0 || $achievement == 0) $customerunit = 0; else $customerunit = $achievement/$orderamount; return $customerunit; } /** * 店铺销售额(已支付订单总金额) * * @return number */ public function get_achievement(){ $sql = 'SELECT SUM(total_amount) AS _count FROM sdb_ome_orders WHERE shop_id = \''.$this->shop_id.'\' AND paytime >= '.$this->beginTime.' AND paytime <= '.$this->endTime; $result = kernel::database()->selectrow($sql); return $result['_count'] ? $result['_count'] : 0; } /** * 店铺nodeid * * @return number */ public function get_matrixid(){ $shop = app::get('ome')->model('shop')->getlist('*',array('shop_id'=>$this->shop_id)); return $shop[0]['node_id']; } /** * 店铺nodetype * * @return number */ public function get_matrixtype(){ $shop = app::get('ome')->model('shop')->getlist('*',array('shop_id'=>$this->shop_id)); return $shop[0]['node_type']; } /** * 店铺发货量 * * @return number */ public function get_shipmentsnumber(){ $sql = 'SELECT COUNT(*) AS _count FROM sdb_ome_delivery WHERE shop_id = \''.$this->shop_id.'\' AND status = \'succ\' AND delivery_time >= '.$this->beginTime.' AND delivery_time <='.$this->endTime; $result = kernel::database()->selectrow($sql); return $result['_count'] ? $result['_count'] : 0; } /** * 当前LicenseId * * @return number */ public function get_locallicenseid(){ return base_certificate::get('certificate_id'); } /** * 当前nodeid * * @return number */ public function get_localmatrixid(){ return base_shopnode::node_id('ome'); } /** * 当前nodetype * * @return number */ public function get_localmatrixtype(){ return 'ecos.tg'; } /** * 数据创建时间 * * @return number */ public function get_createtime(){ return time(); } }