全流程

This commit is contained in:
2025-03-26 00:36:27 +08:00
parent e8411c9d1a
commit a728db86a0
3 changed files with 64 additions and 241 deletions

View File

@ -95,7 +95,7 @@ class TicketTicket extends Model
public function inspectionShares()
{
return $this->hasMany(TicketUserShare::class, 'linked_ticket_id');
return $this->hasMany(TicketInspectionShare::class, 'linked_ticket_id');
}
public function dept()

View File

@ -1,7 +1,10 @@
<div class="layui-tab layui-tab-brief">
<ul class="layui-tab-title">
{if $ticket.view_process}
<li>核验审核信息</li>
{if $ticket.user_shares}
<li>关联随手拍</li>
{/if}
{if $ticket.inspection_shares}
<li>关联维修人员上报</li>
{/if}
{if $ticket.views}
<li>核验信息</li>
@ -20,30 +23,64 @@
{/if}
</ul>
<div class="layui-tab-content">
{if $ticket.view_process}
{if $ticket.user_shares}
<div class="layui-tab-item">
<div class="layui-collapse">
<div class="layui-colla-item">
<div class="layui-colla-title">审核流程</div>
<div class="layui-colla-content">
<div class="layui-timeline">
<div class="layui-timeline-item">
<i class="layui-icon layui-timeline-axis"></i>
<div class="layui-timeline-content layui-text">
<h3 class="layui-timeline-title">提交审核</h3>
<div class="layui-timeline-content">
{$ticket.view_process.create_name}{$ticket.view_process.create_time|date='Y-m-d H:i:s'}提交
<div>
审核说明:{$ticket.view_process.content}
</div>
</div>
</div>
</div>
{foreach $ticket.view_process.steps as $index=>$step}
{include file="common/step" /}
{/foreach}
</div>
</div>
<div class="layui-card">
<div class="layui-card-header">关联随手拍</div>
<div class="layui-card-body">
<table class="layui-table">
<thead>
<tr>
<th>随手拍编号</th>
<th>问题类型</th>
<th>反馈人</th>
<th>反馈内容</th>
<th>反馈时间</th>
</tr>
</thead>
<tbody class="layui-table-body">
{foreach $ticket.user_shares as $user_share}
<tr>
<td><a data-modal="{:url('user_share/detail', ['id' => $user_share.id])}" data-height="90%" data-width="60%" class="layui-btn layui-btn-xs layui-btn-normal" title="随手拍详情">{$user_share.id}</a></td>
<td>{$user_share.type_name|default=""}</td>
<td>{$user_share.contact_name|default=""}{$user_share.contact_phone|default=""}</td>
<td>{$user_share.content|default=""}</td>
<td>{$user_share.create_at|default=""}</td>
</tr>
</tbody>
{/foreach}
</table>
</div>
</div>
</div>
{/if}
{if $ticket.inspection_shares}
<div class="layui-tab-item">
<div class="layui-card">
<div class="layui-card-header">关联维修人员上报</div>
<div class="layui-card-body">
<table class="layui-table">
<thead>
<tr>
<th>维修人员上报编号</th>
<th>问题类型</th>
<th>维修人员</th>
<th>反馈内容</th>
<th>反馈时间</th>
</tr>
</thead>
<tbody class="layui-table-body">
{foreach $ticket.inspection_shares as $inspection_share}
<tr>
<td><a data-modal="{:url('inspection_share/detail', ['id' => $inspection_share.id])}" data-height="90%" data-width="60%" class="layui-btn layui-btn-xs layui-btn-normal" title="维修人员上报详情">{$inspection_share.id}</a></td>
<td>{$inspection_share.type_name|default=""}</td>
<td>{$inspection_share.contact_name|default=""}{$inspection_share.contact_phone|default=""}</td>
<td>{$inspection_share.content|default=""}</td>
<td>{$inspection_share.create_at|default=""}</td>
</tr>
</tbody>
{/foreach}
</table>
</div>
</div>
</div>

View File

@ -1,215 +1 @@
<div class="layui-tab layui-tab-brief">
<ul class="layui-tab-title">
<li class="layui-this">基本信息</li>
<li>核实情况</li>
<li>维修情况</li>
<li>验收情况</li>
<li>结算情况</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<div class="layui-card">
<div class="layui-card-header">工单内容</div>
<div class="layui-card-body">
<div class="layui-table">
<table class="layui-table">
<tbody class="layui-table-body">
<tr>
<td style="width: 120px">工单编号</td>
<td>{$vo.id|default=""}</td>
</tr>
<tr>
<td>工单标题</td>
<td>{$vo.title|default=""}</td>
</tr>
<tr>
<td>工单类型</td>
<td>{$vo.type_name|default=""}</td>
</tr>
<tr>
<td>工单地址</td>
<td>{$vo.ticket_region|default=""} {$vo.ticket_address|default=""}</td>
</tr>
<tr>
<td>工单内容</td>
<td>{$vo.content|default=""}</td>
</tr>
<tr>
<td>反馈人信息</td>
<td>{$vo.contact_name|default="未填写名称"} {$vo.contact_phone|default="未填写联系方式"}</td>
</tr>
<tr>
<td>工单图片</td>
<td>
<div>
{if count($vo.imgs_arr) > 0}
{foreach $vo.imgs_arr as $img}
<img data-tips-image src="{$img}" alt="image" style="height: 100px;">
<span>&nbsp;</span>
{/foreach}
{else}
无图片
{/if}
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div class="layui-tab-item">
<div class="layui-card">
<div class="layui-card-header">现场核实情况</div>
{if $vo.verify}
<div class="layui-card-body">
{foreach $vo.verify as $verify}
<table class="layui-table">
<tbody class="layui-table-body">
<tr>
<td style="width: 120px">提交时间</td>
<td>{$verify.create_at|default=""}</td>
</tr>
<tr>
<td>核实人</td>
<td>{$verify.staff.name|default=""}【联系方式:{$verify.staff.phone|default=""}</td>
</tr>
<tr>
<td>核实结果</td>
<td>{$verify.content|default=""}</td>
</tr>
<tr>
<td>图片</td>
<td>
<div>
{foreach $verify.imgs_arr as $img}
<img data-tips-image src="{$img}" alt="image" style="height: 100px;">
<span>&nbsp;</span>
{/foreach}
</div>
</td>
</tr>
<tr>
<td>预估工作量</td>
<td>{$verify.work_days|default=""}</td>
</tr>
</tbody>
</table>
{/foreach}
</div>
{else /}
<div class="layui-card-body">
<div class="layui-row">
暂无核实记录
</div>
</div>
{/if}
</div>
</div>
<div class="layui-tab-item">
<div class="layui-card">
<div class="layui-card-header">工单维修情况</div>
{if $vo.repair}
<div class="layui-card-body">
{foreach $vo.repair as $repair}
<table class="layui-table">
<tbody class="layui-table-body">
<tr>
<td style="width: 120px">提交时间</td>
<td>{$repair.create_at|default=""}</td>
</tr>
<tr>
<td>维修人</td>
<td>{$repair.staff.name|default=""}【联系方式:{$repair.staff.phone|default=""}</td>
</tr>
<tr>
<td>维修结果</td>
<td>{$repair.content|default=""}</td>
</tr>
<tr>
<td>图片</td>
<td>
<div>
{foreach $repair.imgs_arr as $img}
<img data-tips-image src="{$img}" alt="image" style="height: 100px;">
<span>&nbsp;</span>
{/foreach}
</div>
</td>
</tr>
</tbody>
</table>
{/foreach}
</div>
{else /}
<div class="layui-card-body">
<div class="layui-row">
暂无维修记录
</div>
</div>
{/if}
</div>
</div>
<div class="layui-tab-item">
<div class="layui-card">
<div class="layui-card-header">工单验收情况</div>
{if $vo.repair_accept}
<div class="layui-card-body">
{foreach $vo.repair_accept as $accept}
<table class="layui-table">
<tbody class="layui-table-body">
<tr>
<td style="width: 120px">提交时间</td>
<td>{$accept.create_at|default=""}</td>
</tr>
<tr>
<td>验收人</td>
<td>{$accept.staff.name|default=""}【联系方式:{$accept.staff.phone|default=""}</td>
</tr>
<tr>
<td>验收结果</td>
<td>{$accept.content|default=""}</td>
</tr>
<tr>
<td>图片</td>
<td>
<div>
{foreach $accept.imgs_arr as $img}
<img data-tips-image src="{$img}" alt="image" style="height: 100px;">
<span>&nbsp;</span>
{/foreach}
</div>
</td>
</tr>
</tbody>
</table>
{/foreach}
</div>
{else /}
<div class="layui-card-body">
<div class="layui-row">
暂无验收记录
</div>
</div>
{/if}
</div>
</div>
<div class="layui-tab-item">
<div class="layui-card">
<div class="layui-card-header">工单结算情况</div>
{if $vo.calculate}
{else /}
<div class="layui-card-body">
<div class="layui-row">
暂无结算记录
</div>
<div class="layui-row">
<a data-confirm="确定要做结算操作吗?" data-action="{:url('calculate')}" data-value="id#{{ d.id }}" data-csrf="{:systoken('calculate')}" class="layui-btn layui-btn-xs layui-btn-danger" title="结算">结算</a>
</div>
</div>
{/if}
</div>
</div>
</div>
</div>
{include file="common/ticket_flow" /}