|
|
@@ -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();
|
|
|
+ }
|
|
|
+
|
|
|
}
|