Просмотр исходного кода

修改投诉工单,及处理user_id报错

林海涛 1 год назад
Родитель
Сommit
d39c60fdcc

+ 1 - 1
app/adminapi/controller/works/IssueWorkController.php

@@ -68,7 +68,7 @@ class IssueWorkController extends BaseAdminController
      */
     public function edit()
     {
-        $params = (new IssueWorkValidate())->post()->goCheck('edit');
+        $params = (new IssueWorkValidate())->post()->goCheck('edit',['approval_admin_id'=>$this->adminId]);
         $result = IssueWorkLogic::edit($params);
         if (true === $result) {
             return $this->success('编辑成功', [], 1, 1);

+ 2 - 1
app/adminapi/lists/goods/GoodsLists.php

@@ -71,9 +71,10 @@ class GoodsLists extends BaseAdminDataLists implements ListsSearchInterface
      */
     public function lists(): array
     {
-        $lists = Goods::order(['id' => 'desc'])
+        $lists = Goods::with('goodsCategory')
             ->where($this->searchWhere)
             ->where($this->queryWhere())
+            ->order(['id' => 'desc'])
             ->limit($this->limitOffset, $this->limitLength)
             ->select()
             ->toArray();

+ 11 - 3
app/adminapi/lists/master_worker_customer/MasterWorkerCustomerLists.php

@@ -38,12 +38,11 @@ class MasterWorkerCustomerLists extends BaseAdminDataLists implements ListsSearc
     public function setSearch(): array
     {
         return [
-            '=' => ['worker_id',  'admin_id', 'status', 'create_time', 'update_time'],
+            '=' => ['worker_id',  'admin_id', 'status'],
             '%like%' => ['name', 'mobile'],
         ];
     }
 
-
     /**
      * @notes 获取列表
      * @return array
@@ -65,7 +64,8 @@ class MasterWorkerCustomerLists extends BaseAdminDataLists implements ListsSearc
             ->toArray();
     }
 
-    public function queryWhere(){
+    public function queryWhere():array
+    {
         $where = [];
         // 用户
         if (isset($this->params['worker_id']) && is_array($this->params['worker_id'])) {
@@ -74,6 +74,14 @@ class MasterWorkerCustomerLists extends BaseAdminDataLists implements ListsSearc
         if (isset($this->params['admin_id']) && is_array($this->params['admin_id'])) {
             $where[] = ['admin_id', 'in',$this->params['admin_id']];
         }
+        if(isset($this->params['create_time']) && !empty($this->params['create_time'])){
+            $time = [strtotime($this->params['create_time'][0]), strtotime($this->params['create_time'][1])];
+            $where[] = ['create_time', 'between', $time];
+        }
+        if(isset($this->params['update_time']) && !empty($this->params['update_time'])){
+            $time = [strtotime($this->params['update_time'][0]), strtotime($this->params['update_time'][1])];
+            $where[] = ['update_time', 'between', $time];
+        }
         return $where;
     }
 

+ 104 - 76
app/adminapi/lists/works/IssueWorkLists.php

@@ -1,77 +1,105 @@
-<?php
-// +----------------------------------------------------------------------
-// | likeadmin快速开发前后端分离管理后台(PHP版)
-// +----------------------------------------------------------------------
-// | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力
-// | 开源版本可自由商用,可去除界面版权logo
-// | gitee下载:https://gitee.com/likeshop_gitee/likeadmin
-// | github下载:https://github.com/likeshop-github/likeadmin
-// | 访问官网:https://www.likeadmin.cn
-// | likeadmin团队 版权所有 拥有最终解释权
-// +----------------------------------------------------------------------
-// | author: likeadminTeam
-// +----------------------------------------------------------------------
-
-namespace app\adminapi\lists\works;
-
-
-use app\adminapi\lists\BaseAdminDataLists;
-use app\common\model\works\IssueWork;
-use app\common\lists\ListsSearchInterface;
-
-
-/**
- * IssueWork列表
- * Class IssueWorkLists
- * @package app\adminapi\listsworks
- */
-class IssueWorkLists extends BaseAdminDataLists implements ListsSearchInterface
-{
-
-
-    /**
-     * @notes 设置搜索条件
-     * @return \string[][]
-     * @author likeadmin
-     * @date 2024/07/10 15:06
-     */
-    public function setSearch(): array
-    {
-        return [
-            '=' => ['work_sn', 'service_work_id', 'master_worker_id', 'issue_approval', 'complaint_status', 'responsible', 'complaint_details', 'finished_time', 'approval_admin_id', 'approval_time', 'create_time', 'update_time'],

-        ];
-    }
-
-
-    /**
-     * @notes 获取列表
-     * @return array
-     * @throws \think\db\exception\DataNotFoundException
-     * @throws \think\db\exception\DbException
-     * @throws \think\db\exception\ModelNotFoundException
-     * @author likeadmin
-     * @date 2024/07/10 15:06
-     */
-    public function lists(): array
-    {
-        return IssueWork::where($this->searchWhere)
-            ->field(['id', 'work_sn', 'service_work_id', 'master_worker_id', 'issue_approval', 'complaint_status', 'responsible', 'complaint_details', 'complaint_images', 'finished_time', 'approval_admin_id', 'approval_time', 'create_time', 'update_time'])
-            ->limit($this->limitOffset, $this->limitLength)
-            ->order(['id' => 'desc'])
-            ->select()
-            ->toArray();
-    }
-
-
-    /**
-     * @notes 获取数量
-     * @return int
-     * @author likeadmin
-     * @date 2024/07/10 15:06
-     */
-    public function count(): int
-    {
-        return IssueWork::where($this->searchWhere)->count();
-    }
-
+<?php
+// +----------------------------------------------------------------------
+// | likeadmin快速开发前后端分离管理后台(PHP版)
+// +----------------------------------------------------------------------
+// | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力
+// | 开源版本可自由商用,可去除界面版权logo
+// | gitee下载:https://gitee.com/likeshop_gitee/likeadmin
+// | github下载:https://github.com/likeshop-github/likeadmin
+// | 访问官网:https://www.likeadmin.cn
+// | likeadmin团队 版权所有 拥有最终解释权
+// +----------------------------------------------------------------------
+// | author: likeadminTeam
+// +----------------------------------------------------------------------
+
+namespace app\adminapi\lists\works;
+
+
+use app\adminapi\lists\BaseAdminDataLists;
+use app\common\model\works\IssueWork;
+use app\common\lists\ListsSearchInterface;
+use think\db\Query;
+
+
+/**
+ * IssueWork列表
+ * Class IssueWorkLists
+ * @package app\adminapi\listsworks
+ */
+class IssueWorkLists extends BaseAdminDataLists implements ListsSearchInterface
+{
+
+
+    /**
+     * @notes 设置搜索条件
+     * @return \string[][]
+     * @author likeadmin
+     * @date 2024/07/10 15:06
+     */
+    public function setSearch(): array
+    {
+        return [
+            '=' => ['work_sn', 'service_work_id', 'master_worker_id', 'issue_approval', 'complaint_status', 'responsible', 'complaint_details',  'approval_admin_id', ],
+
+        ];
+    }
+
+    public function querySearch():array
+    {
+        $where = [];
+        if(isset($this->params['approval_time']) && !empty($this->params['approval_time'])){
+            $time = [strtotime($this->params['approval_time'][0]), strtotime($this->params['approval_time'][1])];
+            $where[] = ['approval_time', 'between', $time];
+        }
+        if(isset($this->params['finished_time']) && !empty($this->params['finished_time'])){
+            $time = [strtotime($this->params['finished_time'][0]), strtotime($this->params['finished_time'][1])];
+            $where[] = ['finished_time', 'between', $time];
+        }
+        if(isset($this->params['create_time']) && !empty($this->params['create_time'])){
+            $time = [strtotime($this->params['create_time'][0]), strtotime($this->params['create_time'][1])];
+            $where[] = ['create_time', 'between', $time];
+        }
+        if(isset($this->params['update_time']) && !empty($this->params['update_time'])){
+            $time = [strtotime($this->params['update_time'][0]), strtotime($this->params['update_time'][1])];
+            $where[] = ['update_time', 'between', $time];
+        }
+        return $where;
+    }
+    /**
+     * @notes 获取列表
+     * @return array
+     * @throws \think\db\exception\DataNotFoundException
+     * @throws \think\db\exception\DbException
+     * @throws \think\db\exception\ModelNotFoundException
+     * @author likeadmin
+     * @date 2024/07/10 15:06
+     */
+    public function lists(): array
+    {
+        return IssueWork::with(['masterWorker'=>function(Query $query){
+            $query->field('id,real_name,worker_number');
+        },'admin'=>function(Query $query){
+            $query->field('id,name');
+        }])
+            ->where($this->searchWhere)
+            ->where($this->querySearch())
+            ->field(['id', 'work_sn', 'service_work_id', 'master_worker_id', 'issue_approval', 'complaint_status', 'responsible', 'complaint_details', 'complaint_images', 'finished_time', 'approval_admin_id', 'approval_time', 'create_time', 'update_time'])
+            ->limit($this->limitOffset, $this->limitLength)
+            ->order(['id' => 'desc'])
+            ->select()
+            ->toArray();
+    }
+
+
+    /**
+     * @notes 获取数量
+     * @return int
+     * @author likeadmin
+     * @date 2024/07/10 15:06
+     */
+    public function count(): int
+    {
+       return IssueWork::where($this->searchWhere)->where($this->querySearch())->count();
+    }
+
 }

+ 2 - 2
app/adminapi/logic/works/IssueWorkLogic.php

@@ -85,8 +85,8 @@ class IssueWorkLogic extends BaseLogic
                 'complaint_details' => $params['complaint_details'],
                 'complaint_images' => $params['complaint_images'],
                 'finished_time' => strtotime($params['finished_time']),
-                'approval_admin_id' => $params['approval_admin_id'],
-                'approval_time' => strtotime($params['approval_time']),
+                'approval_admin_id' =>$params['approval_admin_id'],
+                'approval_time' => time(),
             ]);
 
             Db::commit();

+ 10 - 1
app/common/model/works/IssueWork.php

@@ -15,8 +15,9 @@
 namespace app\common\model\works;
 
 
+use app\common\model\auth\Admin;
 use app\common\model\BaseModel;
-
+use app\common\model\master_worker\MasterWorker;
 
 
 /**
@@ -29,6 +30,14 @@ class IssueWork extends BaseModel
     
     protected $name = 'issue_work';
 
+    public function masterWorker()
+    {
+        return $this->hasOne(MasterWorker::class,'id','master_worker_id');
+    }
+    public function admin()
+    {
+        return $this->hasOne(Admin::class,'id','approval_admin_id');
+    }
     public function getIssueApprovalTextAttr($value,$data)
     {
         $approval = [0=>'等待受理',1=>'受理中',2=>'已核实',3=>'返修中',4=>'已完结'];

+ 1 - 1
app/workerapi/lists/MasterWorkerMessageLists.php

@@ -18,7 +18,7 @@ class MasterWorkerMessageLists extends BaseWorkerDataLists  implements ListsSear
     public function queryWhere()
     {
         $where = [];
-        $where[] = ['user_id', '=', $this->userId];
+        $where[] = ['worker_id', '=', $this->userId];
         return $where;
     }
     public function lists():array

+ 2 - 2
app/workerapi/logic/AccountLogic.php

@@ -27,7 +27,7 @@ class AccountLogic extends BaseLogic
             $ytime = strtotime("$yDay 00:00:00");//昨天开始时间戳
             $yetime = strtotime("$yDay 23:59:59");//昨天开始时间戳
             $data= ['user_money' =>0,'account_yesterday' => 0,'case_out_money' => 0];
-            $data['user_money'] = MasterWorker::where('id',$params['user_id'])->value('user_money') ?? 0;
+            $data['user_money'] = MasterWorker::where('id',$params['worker_id'])->value('user_money') ?? 0;
             $where = [];
             $where[] = ['worker_id','=',$params['worker_id']] ;
             $where[] = ['change_type', '=', WorkerAccountLogEnum::UM_INC_ADMIN];
@@ -36,7 +36,7 @@ class AccountLogic extends BaseLogic
             $data['account_yesterday']= MasterWorkerAccountLog::where($where)
                 ->sum('change_amount');
             $data['case_out_money']= MasterWorkerCaseOutLog::where([
-                'worker_id'=>$params['user_id'],
+                'worker_id'=>$params['worker_id'],
                 'review_status' => 1,
             ])->sum('change_amount');
             return $data;