From b31012af2556d5792dd2e00f7658f409ee0ca8be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E5=BF=97=E5=BC=BA?= <357099073@qq.com> Date: Fri, 27 Jun 2025 16:33:42 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=EF=BC=9A=E5=A4=84=E7=90=86?= =?UTF-8?q?=E5=B7=A5=E5=8D=95bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/workorder/controller/Index.php | 50 ++++- app/workorder/view/index/edit.html | 316 +++++++++++++++++++--------- app/workorder/view/index/index.html | 2 +- app/workorder/view/index/view.html | 296 ++++++++++++++------------ 4 files changed, 422 insertions(+), 242 deletions(-) diff --git a/app/workorder/controller/Index.php b/app/workorder/controller/Index.php index 426982b..ca5b165 100644 --- a/app/workorder/controller/Index.php +++ b/app/workorder/controller/Index.php @@ -122,17 +122,47 @@ class Index extends BaseController } } else { $param = get_params(); - $id = isset($param['id']) ? $param['id'] : 0; + $id = !empty($param['id']) ? intval($param['id']) : 0; + $workorder = WorkOrderList::where('id', $id) - ->field('id, project_id, problemtype, uid, username, contact, content, remark, status, solve, creater, sub_time, create_time') + ->field('id, project_id, problemtype, uid, username, contact, email, content, remark, status, solve, creater, sub_time, create_time') ->find(); if ($workorder) { + // 批量获取相关ID + $projectId = $workorder['project_id']; + $createrId = $workorder['creater']; + // $solveId = $workorder['solve']; + + // 查询相关名称和联系方式 + $projectName = $projectId ? Db::name('Project')->where('id', $projectId)->value('name_short') : '-'; + $adminName = $createrId ? Db::name('Admin')->where('id', $createrId)->value('name') : '-'; + // $solveName = $solveId ? Db::name('Admin')->where('id', $solveId)->value('name') : '-'; + + // 联系方式优先用工单自带,否则查创建人 + $contact = !empty($workorder['contact']) ? $workorder['contact'] : ( + $createrId ? (Db::name('Admin')->where('id', $createrId)->value('mobile') ?: '-') : '-' + ); + $email = !empty($workorder['email']) ? $workorder['email'] : ( + $createrId ? (Db::name('Admin')->where('id', $createrId)->value('email') ?: '-') : '-' + ); + $uid = !empty($workorder['uid']) ? $workorder['uid'] : ( + $createrId ? (Db::name('Admin')->where('id', $createrId)->value('id') ?: '-') : '-' + ); + + // 赋值 + $workorder['project_id'] = $projectName ?: '-'; + $workorder['creater'] = $adminName ?: '-'; + // $workorder['solve'] = $solveName ?: '-'; + $workorder['contact'] = $contact; + $workorder['email'] = $email ?: '-'; + $workorder['uid'] = $uid ?: '-'; View::assign('detail', $workorder); } else { View::assign('message', '没有详细数据'); } return view(); + // return json($workorder); } } @@ -153,6 +183,22 @@ class Index extends BaseController } else { $view->contact = Db::name('Admin')->where('id', $view['creater'])->value('mobile') ?: '-'; } + if (!empty($view['uid'])) { + $view->uid = $view['uid']; + } else { + $view->uid = Db::name('Admin')->where('id', $view['creater'])->value('id') ?: '-'; + } + if (!empty($view['email'])) { + $view->email = $view['email']; + } else { + $view->email = Db::name('Admin')->where('id', $view['creater'])->value('email') ?: '-'; + } + if (!empty($view['project_order_id'])) { + $view->project_order_id = $view['project_order_id']; + } else { + $projectOrderId = Db::name('WorkOrder')->where('id', $id ?: $view['id'])->value('project_order_id'); + $view->project_order_id = $projectOrderId ?: $view['id']; + } $adminName = Db::name('Admin')->where('id', $view['creater'])->value('name'); $view->creater = $adminName ?: '-'; $solveName = Db::name('Admin')->where('id', $view['solve'])->value('name'); diff --git a/app/workorder/view/index/edit.html b/app/workorder/view/index/edit.html index 38836bc..d781c73 100644 --- a/app/workorder/view/index/edit.html +++ b/app/workorder/view/index/edit.html @@ -7,18 +7,23 @@
| 项目问题 | -
+
+
+
+ 基础信息+
+ 问题沟通+
+
+ 问题描述
= $detail['content'] ?>
- |
- 备注 | -{$detail.remark} | -
{$detail.remark}
+