wupengfei 1 year ago
parent
commit
796585017c
3 changed files with 96 additions and 26 deletions
  1. 4 4
      .idea/workspace.xml
  2. 91 20
      application/api/controller/Demand.php
  3. 1 2
      application/api/controller/Supplier.php

+ 4 - 4
.idea/workspace.xml

@@ -4,7 +4,7 @@
     <list default="true" id="1a36929e-c054-4875-a943-593a74e55fa4" name="Default Changelist" comment="">
       <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/application/api/controller/Demand.php" beforeDir="false" afterPath="$PROJECT_DIR$/application/api/controller/Demand.php" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/application/api/controller/Press.php" beforeDir="false" afterPath="$PROJECT_DIR$/application/api/controller/Press.php" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/application/api/controller/Supplier.php" beforeDir="false" afterPath="$PROJECT_DIR$/application/api/controller/Supplier.php" afterDir="false" />
     </list>
     <option name="SHOW_DIALOG" value="false" />
     <option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -374,7 +374,7 @@
       <workItem from="1689382026617" duration="17945000" />
       <workItem from="1689555292248" duration="15786000" />
       <workItem from="1689581505379" duration="6890000" />
-      <workItem from="1689641487273" duration="5450000" />
+      <workItem from="1689641487273" duration="7420000" />
     </task>
     <servers />
   </component>
@@ -504,10 +504,10 @@
       <screen x="0" y="0" width="2560" height="1400" />
     </state>
     <state x="1410" y="539" key="#com.intellij.fileTypes.FileTypeChooser/0.0.2560.1400@0.0.2560.1400" timestamp="1684374232836" />
-    <state x="1106" y="469" key="#com.jetbrains.php.actions.copyPaste.importReferences.PhpImportReferencesDialog" timestamp="1689649679704">
+    <state x="1106" y="469" key="#com.jetbrains.php.actions.copyPaste.importReferences.PhpImportReferencesDialog" timestamp="1689650925842">
       <screen x="0" y="0" width="2560" height="1400" />
     </state>
-    <state x="1106" y="469" key="#com.jetbrains.php.actions.copyPaste.importReferences.PhpImportReferencesDialog/0.0.2560.1400@0.0.2560.1400" timestamp="1689649679704" />
+    <state x="1106" y="469" key="#com.jetbrains.php.actions.copyPaste.importReferences.PhpImportReferencesDialog/0.0.2560.1400@0.0.2560.1400" timestamp="1689650925842" />
     <state x="420" y="147" width="1942" height="1088" key="DiffContextDialog" timestamp="1689585156769">
       <screen x="0" y="0" width="2560" height="1400" />
     </state>

+ 91 - 20
application/api/controller/Demand.php

@@ -309,7 +309,7 @@ class Demand extends Base
             $val['parent']  = $parent ? $parent->toArray() : null;
         });
         $total_num  = DemandComment::where($where)->alias('c')->count();
-        $this->success('ok',['list'=>$list,'total_num'=>numTransform($total_num)]);
+        $this->success('ok',['list'=>$list,'total_num'=>numTransform($total_num),'total_count'=>$total_num,]);
     }
 
 
@@ -687,8 +687,8 @@ class Demand extends Base
 
 
     /**
-     * @title 我的收藏列表【需求】
-     * @desc 我的收藏列表
+     * @title 我的收藏【需求】
+     * @desc 我的收藏
      * @author qc
      * @method GET
      * @url /api/Demand/getCollectDemand
@@ -702,13 +702,17 @@ class Demand extends Base
      * @return name:demand_id type:string default:-- desc:需求id
      * @return name:cover type:string default:-- desc:封面
      * @return name:content type:string default:-- desc:内容
-     * @return name:company type:string default:-- desc:公司
-     * @return name:company_logo type:string default:-- desc:公司logo
      * @return name:money type:string default:-- desc:价格
      * @return name:user_id type:string default:-- desc:会员id
      * @return name:app_name type:string default:-- desc:发布方名称
      * @return name:app_logo type:string default:-- desc:发布方头像
      * @return name:is_over type:int default:-1 desc:是否解决或开源【0否,1是,2开源】
+     * @return name:like_num type:string default:-- desc:点赞数量
+     * @return name:is_like type:string default:-- desc:是否点赞(0否1是)
+     * @return name:collect_num type:string default:-- desc:收藏量
+     * @return name:comment_num type:string default:-- desc:评论数量
+     * @return name:transmit_num type:string default:-- desc:转发量
+     * @return name:read_num type:string default:-- desc:阅读量
      * @return name:is_normal type:int default:-- desc:是否是正常记录(0已删除或是已禁用1可以正常跳转详情)
      */
     public function getCollectDemand()
@@ -720,23 +724,22 @@ class Demand extends Base
         $sel_where[]  = ['t.coll_type','=',10];
         $list = UserCollect::where($sel_where)
             ->alias('t')
-            ->field('t.id,t.create_at,t.coll_id demand_id,i.title,i.cover,i.content,company,money,is_over,company_logo,i.user_id')
+            ->field('t.id,t.create_at,t.coll_id demand_id,i.title,i.cover,i.content,company,money,is_over,company_logo,i.user_id,i.transmit_num,i.read_num')
             ->leftJoin('PlatformDemand i','t.coll_id = i.id')
             ->order('id desc')
             ->limit($this->off_set,$this->page_num)
             ->select()->toArray();
-        $app_name = sysconf('app_name');
-        $app_logo = sysconf('app_logo');
-        array_walk($list,function (&$v)use ($app_name,$app_logo){
+        array_walk($list,function (&$v){
+            $v['read_num'] = numTransform($v['read_num']);
             $v['is_normal'] = CheckPower::checkModulesPower($v['demand_id'],0,$this->request->controller());
-            if(!$v['user_id']){
-                $v['app_name']  = $app_name;
-                $v['app_logo']  = $app_logo;
-            }else{
-                $user_info = User::where('id',$v['user_id'])->field('name,headimg')->find();
-                $v['app_name']  = $user_info ? $user_info->name : '';
-                $v['app_logo']  = $user_info ? $user_info->headimg : '';
-            }
+            $auth_info = PlatformDemand::getAuth($v['user_id'],APPNAME,APPLOGO);
+            $v['app_name']  = $auth_info['app_name'];
+            $v['app_logo']  = $auth_info['app_logo'];
+            $v['like_num'] = PlatformLike::getPraiseNum($v['demand_id'],9);
+            $v['is_like'] = PlatformLike::checkTags($this->user_id, $v['demand_id'], 9);
+            $v['collect_num'] = UserCollect::getCollectNum(10,$v['demand_id']);
+            $v['switch_open'] =  PlatformSwitch::checkSwitch($this->user_id,$v['demand_id'],12);
+            $v['comment_num'] = DemandComment::getCommentNum($v['demand_id']);
         });
         $this->success('ok',['list'=>$list]);
 
@@ -758,12 +761,14 @@ class Demand extends Base
      * @return name:title type:string default:-- desc:标题
      * @return name:demand_id type:string default:-- desc:需求id
      * @return name:content type:string default:-- desc:评论内容
-     * @return name:demand_content type:string default:-- desc:需求内容【简介】
      * @return name:cover type:string default:-- desc:封面
      * @return name:is_top type:int default:-- desc:是否置顶(0否1是)
      * @return name:create_at type:string default:-- desc:时间
      * @return name:user_name type:string default:-- desc:用户名【用户自己的】
      * @return name:headimg type:string default:-- desc:用户头像【用户自己的】
+     * @return name:app_name type:string default:-- desc:发布方名称
+     * @return name:app_logo type:string default:-- desc:发布方头像
+     * @return name:read_num type:string default:-- desc:阅读量
      * @return name:is_normal type:int default:-- desc:是否是正常记录(0已删除或是已禁用1可以正常跳转详情)
      */
     public function getMyDemandComment()
@@ -776,7 +781,7 @@ class Demand extends Base
         if($title)  $where[]  = ['i.title|i.label','like','%'.$title.'%'];
         $list = DemandComment::where($where)
             ->alias('t')
-            ->field('t.id,t.is_top,t.create_at,t.first_id demand_id,i.images,t.content,i.title,i.cover,i.content demand_content,u.name user_name,u.headimg')
+            ->field('t.id,t.is_top,t.create_at,t.first_id demand_id,i.is_over,t.content,i.title,i.cover,i.user_id,u.name user_name,u.headimg,i.read_num')
             ->leftJoin('PlatformDemand i','t.first_id = i.id')
             ->leftJoin('store_member u','u.id = t.user_id')
             ->order('t.is_top desc , id desc')
@@ -784,6 +789,10 @@ class Demand extends Base
             ->select()->toArray();
         array_walk($list,function (&$v){
             $v['is_normal'] = CheckPower::checkModulesPower($v['demand_id'],0,$this->request->controller());
+            $v['read_num'] = numTransform($v['read_num']);
+            $auth_info = PlatformDemand::getAuth($v['user_id'],APPNAME,APPLOGO);
+            $v['app_name']  = $auth_info['app_name'];
+            $v['app_logo']  = $auth_info['app_logo'];
         });
         $this->success('ok',['list'=>$list]);
 
@@ -1145,9 +1154,71 @@ class Demand extends Base
 
 
 
+    /**
+     * @title 我的回复【我的回复--我回复过的评论】
+     * @desc 我的回复
+     * @author qc
+     * @method GET
+     * @url /api/Demand/getReplyDemand
+     * @header name:Authorization require:1 desc:Token
+     * @param  name:title type:string default:-- desc:标题
+     * @param  name:page type:int default:0 desc:页数
+     * @param  name:page_num type:int default:20 desc:每页数
+     * @return name:title type:string default:-- desc:标题
+     * @return name:demand_id type:int default:-- desc:需求id
+     * @return name:cover type:string default:-- desc:封面
+     * @return name:create_at type:string default:-- desc:时间
+     * @return name:is_over type:int default:-- desc:是否解决或开源【0否,1是,2开源】
+     * @return name:is_normal type:int default:-- desc:是否是正常记录(0已删除或是已禁用1可以正常跳转详情)
+     * @return name:user_name type:string default:-- desc:用户名【用户自己的】
+     * @return name:headimg type:string default:-- desc:用户头像【用户自己的】
+     * @return name:parent_comment type:array default:-- desc:上级评论内容【你评论的那个评论】
+     * @return name:parent_comment.content type:string default:-- desc:内容
+     * @return name:parent_comment.name type:string default:-- desc:会员名称
+     * @return name:parent_comment.title type:string default:-- desc:标题
+     * @return name:parent_comment.demand_id type:string default:-- desc:需求id
+     * @return name:parent_comment.app_name type:string default:-- desc:发布方名称
+     * @return name:parent_comment.app_logo type:string default:-- desc:发布方头像
+     * @return name:parent_comment.read_num type:string default:-- desc:阅读量
+     * @return name:parent_comment.is_over type:int default:-- desc:是否解决或开源【0否,1是,2开源】
+     */
 
+    public function getReplyDemand()
+    {
+        $user_info = $this->userInfo();
+        $sel_where  = [];
+        $title = input('get.title');
+        if($title)  $sel_where[]  = ['i.title|i.label','like','%'.$title.'%'];
+        $sel_where[]  = ['t.user_id','=',$this->user_id];
+        $sel_where[]  = ['t.is_deleted','=',0];
+        $sel_where[]  = ['t.lev','>=',2];
+        $sel_where[]  = ['t.pid','>',0];
+        $list = DemandComment::where($sel_where)
+            ->alias('t')
+            ->field('t.id,t.is_top,t.create_at,t.first_id demand_id,t.lev,t.content,t.pid,i.title,i.cover,read_num,i.is_over')
+            ->leftJoin('PlatformDemand i','t.first_id = i.id')
+            ->order('t.is_top,t.id desc')
+            ->limit($this->off_set,$this->page_num)
+            ->select()->toArray();
+        foreach ($list as &$v) {
+            $v['user_name'] = $user_info['name'];
+            $v['headimg']  = $user_info['headimg'];
+            $v['is_normal'] = CheckPower::checkModulesPower($v['demand_id'],0,$this->request->controller());
+            $parent_comment = DemandComment::where([['t.id','=',$v['pid']]])
+                ->field('t.id,t.is_top,t.first_id demand_id,t.content,i.title,i.cover,t.pid,u.name,i.read_num,i.user_id,i.is_over')->alias('t')
+                ->leftJoin('PlatformDemand i','t.first_id = i.id')
+                ->leftJoin('store_member u','t.user_id = u.id')
+                ->find()->toArray();
+            $parent_comment['read_num'] = numTransform($v['read_num']);
+            $info_auth = PlatformDemand::getAuth($parent_comment['user_id'],APPNAME,APPLOGO);
+            $parent_comment['app_name'] = $info_auth['app_name'];
+            $parent_comment['app_logo'] = $info_auth['app_logo'];
+            $v['parent_comment'] = $parent_comment;
+        }
+        $total_num =  DemandComment::where($sel_where)->alias('t') ->leftJoin('PlatformDemand i','t.first_id = i.id')->count();
+        $this->success('ok',['list'=>$list,'total_count'=>$total_num,'page_num'=>$this->page_num]);
 
-
+    }
 
 
 

+ 1 - 2
application/api/controller/Supplier.php

@@ -1213,7 +1213,6 @@ class Supplier extends Base
      * @return name:parent_comment.goods_name type:string default:-- desc:产品名称
      * @return name:parent_comment.name type:string default:-- desc:你的会员名称
      * @return name:parent_comment.headimg type:string default:-- desc:你的头像
-     * @return name:parent_comment.forum_id type:int default:-- desc:问答id
      * @return name:parent_comment.show_title type:string default:-- desc:展示的问题标题或答案内容
      * @return name:parent_comment.reply_id type:int default:-- desc:答案id【值为0是问题类型,大于0是答案类型】
      *
@@ -1313,7 +1312,7 @@ class Supplier extends Base
      * @return name:parent_comment.goods_name type:string default:-- desc:产品名称
      * @return name:parent_comment.name type:string default:-- desc:会员名称【别人的】
      * @return name:parent_comment.headimg type:string default:-- desc:会员头像【别人的】
-     * @return name:parent_comment.title type:string default:-- desc:问答标题
+     * @return name:parent_comment.title type:string default:-- desc:标题
      * @return name:parent_comment.goods_id type:int default:-- desc:商品id
      * @return name:parent_comment.supplier_logo type:string default:-- desc:供应商logo
      * @return name:parent_comment.supplier_name type:string default:-- desc:供应商名称