attfile.php 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. <?php
  2. Doo::loadModel('fileup');
  3. class attFile
  4. {
  5. private $__file;
  6. function __construct()
  7. {
  8. $this->__file = new fileup();
  9. }
  10. public function insertFile($pid, $stid, $mpid, $pmid, $numpname, $auditoruid, $filepath, $ziphashcode = 0, $filehashcode = 0, $times = 0,$isnew = 2)
  11. {
  12. return $this->__file->createFile($pid, $stid, $mpid, $pmid, $numpname, $auditoruid, $filepath, $ziphashcode = 0, $filehashcode, $isnew, $times);
  13. }
  14. public function getMaxRow()
  15. {
  16. return $this->__file->getOne(array('where' => 'aid = (select max(aid)) order by aid desc', 'asArray' => TRUE));
  17. }
  18. public function getDownUrl($mpid)
  19. {
  20. return $this->__file->getOne(array('where' => 'mpid=?', 'param' => array($mpid), 'asArray' => TRUE));
  21. }
  22. public function getNewLast($pmid, $numpname, $times = 0)
  23. {
  24. return $this->__file->getOne(array('where' => 'pmid=? and numpname=? and times=? and isnew=2', 'param' => array($pmid, $numpname, $times), 'asArray' => TRUE));
  25. }
  26. public function getNewLast3($pmid, $numpname, $times = 0)
  27. {
  28. return $this->__file->getOne(array('where' => 'pmid=? and numpname=? and times=? and isnew=2', 'param' => array($pmid, $numpname, $times), 'asArray' => TRUE));
  29. }
  30. public function getMeasureLastNew($pmid, $numpname)
  31. {
  32. return $this->__file->getOne(array('where' => 'pmid=? and numpname=? and isnew=2', 'param' => array($pmid, $numpname), 'desc' => 'times', 'asArray' => TRUE));
  33. }
  34. public function getNewLast2($pmid, $numpname)
  35. {
  36. return $this->__file->getOne(array('where' => 'stid=? and isnew=2', 'param' => array($pmid, $numpname), 'groupby' => 'numpname', 'asArray' => TRUE));
  37. }
  38. public function getFirstFile($pmid, $numpname, $times = 0)
  39. {
  40. return $this->__file->getOne(array('where' => 'pmid=? and numpname=? and times=? and isnew=1', 'orderby' => 'aid', 'param' => array($pmid, $numpname, $times), 'asArray' => TRUE));
  41. }
  42. public function getLastData($stid)
  43. {
  44. return $this->__file->find(array('where' => 'stid=? and isnew=2', 'param' => array($stid), 'groupby' => 'pmid', 'asArray' => TRUE));
  45. }
  46. public function getFileUpdate($pmid)
  47. {
  48. return $this->__file->getOne(array('where' => 'aid=(SELECT max(aid) FROM jl_attachment where pmid=? and isnew=2)', 'desc' => 'aid', 'param' => array($pmid), 'asArray' => TRUE));
  49. // return $this->__file->getOne(array('where' => 'numpname=(SELECT max(numpname) FROM jl_attachment pmid=?) and isnew=2', 'param' => array($pmid), 'asArray' => TRUE));
  50. }
  51. public function getLastNewProfile($pmid)
  52. {
  53. return $this->__file->getOne(array('where' => 'pmid=? and isnew=2', 'groupby' => 'numpname', 'desc' => 'numpname', 'param' => array($pmid), 'asArray' => TRUE));
  54. }
  55. public function getLastNewProfile2($pmid)
  56. {
  57. return $this->__file->getOne(array('where' => 'pmid=? and isnew=2', 'groupby' => 'pmid,numpname,times', 'desc' => 'aid', 'param' => array($pmid), 'asArray' => TRUE));
  58. }
  59. public function getLastNewProfileUnlock($pmid, $numpname, $times)
  60. {
  61. return $this->__file->getOne(array('where' => 'pmid=? and numpname=? and times=? and isnew=1', 'groupby' => 'numpname', 'desc' => 'times', 'param' => array($pmid, $numpname, $times), 'asArray' => TRUE));
  62. }
  63. public function getLastNewProfileUnlock2($pmid, $numpname)
  64. {
  65. return $this->__file->getOne(array('where' => 'pmid=? and numpname=? and isnew=2', 'desc' => 'times', 'param' => array($pmid, $numpname), 'asArray' => TRUE));
  66. }
  67. public function getLastNewProfileUnlock3($pmid, $numpname, $times)
  68. {
  69. return $this->__file->getOne(array('where' => 'pmid=? and numpname=? and times=? and isnew=1', 'desc' => 'times', 'param' => array($pmid, $numpname, $times), 'asArray' => TRUE));
  70. }
  71. public function getReportFile($pmid, $numpname, $times)
  72. {
  73. return $this->__file->getOne(array('where' => 'pmid=? and numpname=? and times=?', 'asc' => 'aid', 'param' => array($pmid, $numpname, $times), 'asArray' => TRUE));
  74. }
  75. // for api
  76. public function getAllRowPid($pid)
  77. {
  78. return $this->__file->find(array('where' => 'pid=? and isnew=2', 'groupby' => 'pmid,numpname', 'desc' => 'times', 'param' => array($pid), 'asArray' => TRUE));
  79. }
  80. // for API 根据PID分组pmid
  81. public function getPmidGroup($pid)
  82. {
  83. return $this->__file->find(array('where' => 'pid=? and isnew=2', 'groupby' => 'pmid', 'param' => array($pid), 'asArray' => TRUE));
  84. }
  85. // for API 根据pmid,审核人id 获取最新一期最新一次记录
  86. public function getLastNumTimes($pmid)
  87. {
  88. return $this->__file->getOne(array('where' => 'pmid=? and isnew=2', 'desc' => 'aid', 'param' => array($pmid), 'asArray' => TRUE));
  89. }
  90. // 去重复
  91. public function getMaxTimes($bid, $num)
  92. {
  93. return $this->__file->getOne(array('select' => 'max(times) as maxtimes', 'where' => 'pmid=? and numpname=?', 'param' => array($bid, $num), 'asArray' => TRUE));
  94. }
  95. // 去重复
  96. public function getMaxTimes2($bid, $num)
  97. {
  98. return $this->__file->getOne(array('select' => 'max(times) as maxtimes', 'where' => 'pmid=? and numpname=?', 'groupby' => 'pmid,numpname', 'param' => array($bid, $num), 'asArray' => TRUE));
  99. }
  100. public function setOldfileFlag($pmid, $numpname, $times = 0)
  101. {
  102. $this->__file->isnew = 1;
  103. return $this->__file->update(array('where' => 'pmid=? and numpname=? and times=?', 'param' => array($pmid, $numpname, $times)));
  104. }
  105. public function updateHash($pmid, $numpname, $times = 0)
  106. {
  107. $this->__file->filehashcode = md5(mt_rand());
  108. return $this->__file->update(array('where' => 'pmid=? and numpname=? and times=? and isnew=2', 'param' => array($pmid, $numpname, $times)));
  109. }
  110. }
  111. ?>