linwu 2 سال پیش
والد
کامیت
a3d2d848e1
1فایلهای تغییر یافته به همراه45 افزوده شده و 4 حذف شده
  1. 45 4
      app/mainapp/controller/Index.php

+ 45 - 4
app/mainapp/controller/Index.php

@@ -2,16 +2,12 @@
 
 namespace app\mainapp\controller;
 
-use app\common\model\ComjobsCate;
 use app\common\model\RensheCode;
-use app\common\model\Worder;
 use app\common\model\WorkerThird;
 use app\mainapp\BaseController;
 use think\facade\Db;
-use think\facade\Session;
 
 use app\common\model\Slide as SlideModel;
-use app\common\model\Notice as NoticeModel;
 use app\common\model\Article as ArticleModel;
 use app\common\model\Navigation as NavigationModel;
 
@@ -22,6 +18,7 @@ use app\common\model\Comjobs as ComjobsModel;
 use app\common\model\Param as ParamModel;
 
 use app\common\model\Sinpage as SinpageModel;
+use app\common\model\ComjobsCate as ComjobsCateModel;
 
 class Index extends BaseController
 {
@@ -144,6 +141,50 @@ class Index extends BaseController
 
     }
 
+    public function listComjobsLike()
+    {
+        $ppage = input('ppage/d', 1);
+        $psize = input('psize/d', 20);
+
+        $map[] = ['createtime', '<=', time()];
+        $map[] = ['priority', '>', 0];
+        $map[] = ['status', 'in', '3,4'];
+
+        $userid = input('userid/d',0);
+        if (!empty($userid)) {
+            $user = UserModel::where('id',$userid)->find();
+            if (!empty($user['com_cate'])) {
+                $ids = ComjobsCateModel::where('title','in',$user['com_cate'])->column('id');
+                $map[] = ['cateid','in',$ids];
+            }
+        }
+        $plist = ComjobsModel::with(['worker'])->where($map)->order(['status' => 'asc', 'priority' => 'desc', 'updatetime' => 'desc', 'id' => 'desc'])->page($ppage)->limit($psize)->select();
+
+        //第三方id
+        $third_ids   = [];
+        $third_lists = [];
+        foreach ($plist as $l) {
+            if (!empty($l['third_id'])) {
+                $third_ids[] = $l['third_id'];
+            }
+        }
+        if (!empty($third_ids)) {
+            $third_lists = WorkerThird::where('id', 'in', $third_ids)->column('*', 'id');
+        }
+
+        $plist = $plist->toArray();
+        foreach ($plist as $k => $v) {
+            if (!empty($v['third_id'])) {
+                $plist[$k]['worker']['title'] = $third_lists[$v['third_id']]['name'];
+            }
+        }
+
+        page_result(0, "", [
+            'plist'   => $plist,
+            'pstatus' => $psize > count($plist) ? 'noMore' : 'more',
+        ]);
+    }
+
     public function getRensheCode()
     {
         $type = input('type','');