|
|
@@ -3,6 +3,7 @@ namespace app\adminapi\lists\master_worker;
|
|
|
|
|
|
use app\adminapi\lists\BaseAdminDataLists;
|
|
|
use app\common\lists\ListsSearchInterface;
|
|
|
+use app\common\model\goods_category\GoodsCategory;
|
|
|
use app\common\model\master_worker\MasterWorker;
|
|
|
use think\facade\Db;
|
|
|
use think\facade\Log;
|
|
|
@@ -90,8 +91,9 @@ class MasterWorkerServiceOrderLists extends BaseAdminDataLists implements ListsS
|
|
|
public function lists(): array
|
|
|
{
|
|
|
$queryWhere = $this->queryWhere();
|
|
|
- return Db::name('master_worker')->alias('a')->field([
|
|
|
- 'a.id','a.real_name','a.nickname','a.worker_number','a.recruiting_behalf','a.mobile','a.cooperation',
|
|
|
+ $lists = Db::name('master_worker')->alias('a')->field([
|
|
|
+ 'a.id','a.real_name','a.nickname','a.worker_number','a.recruiting_behalf','a.mobile','a.cooperation','a.category_ids',
|
|
|
+ Db::raw("COUNT(b.id) AS all_count"),
|
|
|
Db::raw("SUM(CASE WHEN b.service_status = 3 THEN 1 ELSE 0 END) AS success_count"),
|
|
|
Db::raw("SUM(CASE WHEN b.service_status = 4 OR b.service_status = 5 THEN 1 ELSE 0 END) AS fail_count"),
|
|
|
Db::raw("SUM(b.work_total) work_total"),
|
|
|
@@ -103,6 +105,11 @@ class MasterWorkerServiceOrderLists extends BaseAdminDataLists implements ListsS
|
|
|
->order('a.id desc')
|
|
|
->limit($this->limitOffset, $this->limitLength)
|
|
|
->select()->toArray();
|
|
|
+ $categoryData = GoodsCategory::select()->toArray();
|
|
|
+ foreach ($lists as &$item) {
|
|
|
+ $item['category_name'] = implode('、',array_column(get_parent_info($categoryData,explode(',',$item['category_ids'])),'name'));
|
|
|
+ }
|
|
|
+ return $lists;
|
|
|
}
|
|
|
|
|
|
|