2013-01-29 08:05:45 +00:00
|
|
|
<?php
|
|
|
|
/**
|
|
|
|
* Dataorder 数据申请相关
|
|
|
|
*/
|
|
|
|
class Dataorder
|
|
|
|
{
|
|
|
|
public $db; //PDO
|
|
|
|
|
|
|
|
public $tbl_Metadata = "metadata"; //元数据数据表
|
|
|
|
public $tbl_Metadata_temp = "metadata_temp"; //新元数据缓存表
|
2013-01-29 08:52:54 +00:00
|
|
|
public $tbl_Dataorder = "dataorder"; //dataorder表
|
|
|
|
public $tbl_Offlineapp = "offlineapp"; //offlineapp
|
2013-04-17 07:40:16 +00:00
|
|
|
public $tbl_fav = "favorite"; //收藏表
|
2013-01-29 08:05:45 +00:00
|
|
|
|
|
|
|
function __construct($db)
|
|
|
|
{
|
|
|
|
$this->db = $db;
|
|
|
|
}
|
|
|
|
|
|
|
|
public function fetchAllOfflineApp($statu=0,$q=""){
|
2014-06-11 07:06:54 +00:00
|
|
|
$config = \Zend_Registry::get('config');
|
|
|
|
$submd=$config->sub->metadata;
|
2013-01-29 08:05:45 +00:00
|
|
|
$wheresql = array();
|
|
|
|
|
2014-06-11 07:06:54 +00:00
|
|
|
$wheresql[]=" d.uuid in (select uuid from $submd) ";
|
2013-01-29 08:52:54 +00:00
|
|
|
if ($statu==4)
|
2013-01-29 08:05:45 +00:00
|
|
|
$wheresql[] = " (o.ts_approved is null and o.pdflink is not null and d.status=4) ";
|
2013-01-29 08:52:54 +00:00
|
|
|
elseif ($statu==-1)
|
2013-10-08 08:45:58 +00:00
|
|
|
$wheresql[] = " (o.pdflink is not null and d.status=-1)";
|
2013-10-08 03:35:49 +00:00
|
|
|
elseif ($statu == 3)
|
2013-10-08 10:34:14 +00:00
|
|
|
$wheresql[] = " (o.applicationform is not null and d.status=3 ) ";
|
2013-10-08 03:35:49 +00:00
|
|
|
elseif ($statu == 5)
|
|
|
|
$wheresql[] = " (o.status=5) ";
|
|
|
|
else
|
2013-01-29 08:05:45 +00:00
|
|
|
$wheresql[] = " (o.ts_approved is null and o.pdflink is not null and d.status in (3,4))";
|
|
|
|
|
|
|
|
if(!empty($q))
|
|
|
|
{
|
|
|
|
$wheresql[] = " (o.username LIKE '%$q%' OR o.unit LIKE '%$q%' OR o.project LIKE '%$q%' OR o.address LIKE '%$q%') ";
|
|
|
|
}
|
|
|
|
|
|
|
|
if(count($wheresql)>0)
|
|
|
|
{
|
|
|
|
$wheresql = " WHERE ".join(" AND ",$wheresql);
|
|
|
|
}else{
|
|
|
|
$wheresql = "";
|
|
|
|
}
|
|
|
|
|
2013-09-26 03:42:05 +00:00
|
|
|
$sql = "select distinct(o.*),d.status as datastatus from ".$this->tbl_Offlineapp." o
|
2013-01-29 08:52:54 +00:00
|
|
|
left join ".$this->tbl_Dataorder." d on o.id = d.offlineappid
|
2013-01-29 08:05:45 +00:00
|
|
|
$wheresql
|
|
|
|
order by o.ts_created desc";
|
|
|
|
|
|
|
|
$rs = $this->db->query($sql);
|
|
|
|
$rows = $rs->fetchAll();
|
|
|
|
|
|
|
|
return $rows;
|
|
|
|
}
|
2013-01-29 08:52:54 +00:00
|
|
|
|
2013-04-17 07:40:16 +00:00
|
|
|
//收藏元数据
|
|
|
|
public function fav($uid,$uuid)
|
|
|
|
{
|
|
|
|
if(!is_numeric($uid))
|
|
|
|
{
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
|
|
|
|
if(!preg_match("/^[0-9A-Za-z]{8}-[0-9A-Za-z]{4}-[0-9A-Za-z]{4}-[0-9A-Za-z]{4}-[0-9A-Za-z]{12}$/",$uuid))
|
|
|
|
{
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
|
|
|
|
$sql = "SELECT * FROM ".$this->tbl_fav." WHERE uid=$uid AND uuid='$uuid'";
|
|
|
|
$rs = $this->db->query($sql);
|
|
|
|
$rows = $rs->fetchAll();
|
|
|
|
if(count($rows)>0)
|
|
|
|
{
|
|
|
|
return "您已经收藏过此元数据";
|
|
|
|
}
|
|
|
|
|
|
|
|
$sql = "INSERT INTO ".$this->tbl_fav." (uid,uuid) VALUES ($uid,'$uuid')";
|
|
|
|
if($this->db->exec($sql))
|
|
|
|
{
|
|
|
|
return true;
|
|
|
|
}else{
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
2013-01-29 08:52:54 +00:00
|
|
|
|
2013-04-17 07:40:16 +00:00
|
|
|
//移除收藏
|
|
|
|
public function favRemove($uid,$uuid){
|
|
|
|
if(!is_numeric($uid))
|
|
|
|
{
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
|
|
|
|
if(!preg_match("/^[0-9A-Za-z]{8}-[0-9A-Za-z]{4}-[0-9A-Za-z]{4}-[0-9A-Za-z]{4}-[0-9A-Za-z]{12}$/",$uuid))
|
|
|
|
{
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
|
|
|
|
$sql = "SELECT * FROM ".$this->tbl_fav." WHERE uid=$uid AND uuid='$uuid'";
|
|
|
|
$rs = $this->db->query($sql);
|
|
|
|
$rows = $rs->fetchAll();
|
|
|
|
if(count($rows)<1)
|
|
|
|
{
|
|
|
|
return "参数错误";
|
|
|
|
}
|
|
|
|
|
|
|
|
$sql = "DELETE FROM ".$this->tbl_fav." WHERE uid=$uid AND uuid='$uuid'";
|
|
|
|
if($this->db->exec($sql))
|
|
|
|
{
|
|
|
|
return true;
|
|
|
|
}else{
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2013-01-29 08:05:45 +00:00
|
|
|
}
|