Jishuguifan.php 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. <?php
  2. namespace app\api\controller\worker;
  3. use app\common\controller\Apiw;
  4. use think\Db;
  5. use fast\Tree;
  6. /**
  7. * 技术规范
  8. */
  9. class Jishuguifan extends Apiw
  10. {
  11. protected $noNeedLogin = ['*'];
  12. protected $noNeedRight = ['*'];
  13. //所有一级
  14. public function index()
  15. {
  16. $keyword = input('keyword','');
  17. $where_search = [];
  18. if(!empty($keyword)){
  19. $where_search['name'] = ['LIKE','%'.$keyword.'%'];
  20. }
  21. //
  22. $list = Db::name('jishuguifan')->field('id,name,ismenu')
  23. ->where('company_id',$this->auth->company_id)
  24. ->where('pid',0)
  25. ->order('id' , 'asc')
  26. ->select();
  27. $this->success(1, $list);
  28. }
  29. //二级
  30. public function lists(){
  31. $tid = input('id',0);
  32. $list = Db::name('jishuguifan')->field('id,pid,name,ismenu')
  33. ->where('company_id',$this->auth->company_id)
  34. ->where('tid',$tid)
  35. ->select();
  36. $tree = Tree::instance();
  37. $tree->init($list, 'pid');
  38. // $tree->icon = ['&nbsp;&nbsp;&nbsp;&nbsp;','&nbsp;&nbsp;&nbsp;&nbsp;','&nbsp;&nbsp;&nbsp;&nbsp;'];
  39. $tree->icon = [' ',' ',' '];
  40. $tree->nbsp = ' ';
  41. $treedata = $tree->getTreeList($tree->getTreeArray($tid), 'name');
  42. $rs = [
  43. 'tree' => $treedata,
  44. 'is_collect' => $this->is_collect($tid,$this->auth->id),
  45. 'collect_id' => $tid
  46. ];
  47. $this->success(1, $rs);
  48. }
  49. //详情
  50. public function info(){
  51. $id = input('id',0);
  52. $info = Db::name('jishuguifan')
  53. ->where('id',$id)
  54. ->find();
  55. //上一篇
  56. $up_id = 0;
  57. $up = Db::name('jishuguifan')->where('pid',$info['pid'])->where('ismenu',0)->where('id','<',$info['id'])->order('id desc')->value('id');
  58. if($up){
  59. $up_id = $up;
  60. }
  61. //下一篇
  62. $down_id = 0;
  63. $down = Db::name('jishuguifan')->where('pid',$info['pid'])->where('ismenu',0)->where('id','>',$info['id'])->order('id asc')->value('id');
  64. if($down){
  65. $down_id = $down;
  66. }
  67. $rs = [
  68. 'info' => $info,
  69. 'is_collect' => $this->is_collect($info['tid'],$this->auth->id),
  70. 'collect_id' => $info['tid'],
  71. 'up_id' => $up_id,
  72. 'down_id' => $down_id,
  73. ];
  74. $this->success(1, $rs);
  75. }
  76. //下载功能
  77. public function download(){
  78. $where = [
  79. 'worker_id' => $this->auth->id,
  80. 'table_id' => input('id',0),
  81. ];
  82. $check = Db::name('worker_download')->where($where)->find();
  83. if($check){
  84. Db::name('worker_download')->where($where)->update(['updatetime'=>time()]);
  85. $this->success();
  86. }else{
  87. $where['updatetime'] = time();
  88. Db::name('worker_download')->insertGetId($where);
  89. $this->success();
  90. }
  91. }
  92. //收藏,取消收藏
  93. public function collect(){
  94. $where = [
  95. 'worker_id' => $this->auth->id,
  96. 'table' => 'jishuguifan',
  97. 'table_id' => input('id',0),
  98. ];
  99. $check = Db::name('worker_collect')->where($where)->find();
  100. if($check){
  101. Db::name('worker_collect')->where($where)->delete();
  102. $this->success('已取消收藏');
  103. }else{
  104. Db::name('worker_collect')->insertGetId($where);
  105. $this->success('收藏成功');
  106. }
  107. }
  108. //动态是否收藏
  109. private function is_collect($id,$uid){
  110. $where = [
  111. 'worker_id' => $uid,
  112. 'table' => 'jishuguifan',
  113. 'table_id' => $id,
  114. ];
  115. $check = Db::name('worker_collect')->where($where)->find();
  116. if($check){
  117. return 1;
  118. }else{
  119. return 0;
  120. }
  121. }
  122. }