0808
This commit is contained in:
parent
a6b0fccb12
commit
466c8ef228
|
|
@ -47,6 +47,7 @@ const install = (Vue, vm) => {
|
|||
let addNodeEnd = (id, data = {}) => vm.$u.get(`/wf/ticket/${id}/add_node_end/`, data); //加签处理
|
||||
let deliver = (id, data = {}) => vm.$u.get(`/wf/ticket/${id}/deliver/`, data); //转交工单
|
||||
let ticketHandle = (id, data = {}) => vm.$u.post(`/wf/ticket/${id}/handle/`, data); //工单处理
|
||||
let ticketAccept = (id) => vm.$u.post(`/wf/ticket/${id}/accpet/`); //接单
|
||||
|
||||
let operationList = (data = {}) => vm.$u.get('/opm/operation/', data); //作业列表
|
||||
let operationItem = (id) => vm.$u.get(`/opm/operation/${id}/`); //作业详情
|
||||
|
|
@ -95,6 +96,7 @@ const install = (Vue, vm) => {
|
|||
userList,
|
||||
deptList,
|
||||
ticketCreate,
|
||||
ticketAccept,
|
||||
getDickey,
|
||||
getTickets,
|
||||
getTicketItem,
|
||||
|
|
|
|||
|
|
@ -52,6 +52,13 @@
|
|||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/home/list/ticketAll",
|
||||
"style": {
|
||||
"navigationBarTitleText": "所有工单",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/home/list/warning",
|
||||
"style": {
|
||||
|
|
|
|||
|
|
@ -5,12 +5,12 @@
|
|||
|
||||
<block v-if="cateType==='visit'">
|
||||
<view class="ticket-info">
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-item">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">工单流水号</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<input type="text" v-model="ticketDetail.sn" maxlength="50" placeholder="请输入" />
|
||||
<view>{{ticketDetail.sn}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
|
@ -18,31 +18,26 @@
|
|||
<view class="form-content ">
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">作业名称</text>
|
||||
<text class="form-left-text">来访概述</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<input type="text" v-model="oplDetail.name" maxlength="50" placeholder="请输入" />
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">开始时间</text>
|
||||
</view>
|
||||
<view class="form-right form-date">
|
||||
<picker mode="date" :value="formData.start_time" @change="bindStartDateChange">
|
||||
<view class="uni-input">{{formData.start_time}}</view>
|
||||
</picker>
|
||||
<view>{{visitDetail.name }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">结束时间</text>
|
||||
<text class="form-left-text">来访单位</text>
|
||||
</view>
|
||||
<view class="form-right form-date">
|
||||
<picker mode="date" :value="formData.end_time" @change="bindEndDateChange">
|
||||
<view class="uni-input">{{formData.end_time}}</view>
|
||||
</picker>
|
||||
<view class="form-right">
|
||||
<view>{{visitDetail.company }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">来访人数</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{ visitDetail.count_people }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
|
|
@ -50,50 +45,48 @@
|
|||
<text class="form-left-text">状态</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<input type="text" v-model="formData.place" maxlength="50" placeholder="请输入" />
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">作业区域</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<input type="text" v-model="formData.place" maxlength="50" placeholder="请输入" />
|
||||
<view>{{state_[visitDetail.state] }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">业务部门</text>
|
||||
<text class="form-left-text">来访时间</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<input type="text" v-model="formData.place" maxlength="50" placeholder="请输入" />
|
||||
<view>{{visitDetail.visit_time}}</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">部门协调员</text>
|
||||
<text class="form-left-text">离开时间</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<input type="text" v-model="formData.place" maxlength="50" placeholder="请输入" />
|
||||
<view>{{visitDetail.leave_time}}</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">属地部门</text>
|
||||
<text class="form-left-text">来访事由</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<input type="text" v-model="formData.place" maxlength="50" placeholder="请输入" />
|
||||
<view>{{purpose_[visitDetail.purpose] }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left-text">
|
||||
<text class="star">*</text>
|
||||
<text>审批意见</text>
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">来访详述</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{visitDetail.description }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">接待人</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{visitDetail.receptionist_name}}</view>
|
||||
</view>
|
||||
<textarea class="apply-reason-text" v-model="formData.name" maxlength="250" placeholder="请输入" />
|
||||
</view>
|
||||
<view class="btn">
|
||||
<button type="default" class="save-btn">同意</button>
|
||||
|
|
@ -102,15 +95,14 @@
|
|||
</view>
|
||||
|
||||
</block>
|
||||
|
||||
<block v-if="cateType==='rparty'">
|
||||
<block v-else-if="cateType==='rpj'">
|
||||
<view class="ticket-info">
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-item">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">工单流水号</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<input type="text" v-model="ticketDetail.sn" maxlength="50" placeholder="请输入" />
|
||||
<view>{{ticketDetail.sn}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
|
@ -118,31 +110,34 @@
|
|||
<view class="form-content ">
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">作业名称</text>
|
||||
<text class="form-left-text">相关方</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<input type="text" v-model="oplDetail.name" maxlength="50" placeholder="请输入" />
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">开始时间</text>
|
||||
</view>
|
||||
<view class="form-right form-date">
|
||||
<picker mode="date" :value="formData.start_time" @change="bindStartDateChange">
|
||||
<view class="uni-input">{{formData.start_time}}</view>
|
||||
</picker>
|
||||
<view>{{rpjDetail.rparty_name }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">结束时间</text>
|
||||
<text class="form-left-text">入厂项目</text>
|
||||
</view>
|
||||
<view class="form-right form-date">
|
||||
<picker mode="date" :value="formData.end_time" @change="bindEndDateChange">
|
||||
<view class="uni-input">{{formData.end_time}}</view>
|
||||
</picker>
|
||||
<view class="form-right">
|
||||
<view>{{rpjDetail.name }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">项目类型</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{rpjType_[rpjDetail.type]}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">合同编号</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{ rpjDetail.contract_number }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
|
|
@ -150,59 +145,57 @@
|
|||
<text class="form-left-text">状态</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<input type="text" v-model="formData.place" maxlength="50" placeholder="请输入" />
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">作业区域</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<input type="text" v-model="formData.place" maxlength="50" placeholder="请输入" />
|
||||
<view>{{state_[rpjDetail.state] }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">业务部门</text>
|
||||
<text class="form-left-text">进厂时间</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<input type="text" v-model="formData.place" maxlength="50" placeholder="请输入" />
|
||||
<view>{{rpjDetail.come_time}}</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">部门协调员</text>
|
||||
<text class="form-left-text">离厂时间</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<input type="text" v-model="formData.place" maxlength="50" placeholder="请输入" />
|
||||
<view>{{rpjDetail.leave_time}}</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">属地部门</text>
|
||||
<text class="form-left-text">所属部门</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<input type="text" v-model="formData.place" maxlength="50" placeholder="请输入" />
|
||||
<view>{{rpjDetail.belong_dept_name }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left-text">
|
||||
<text class="star">*</text>
|
||||
<text>审批意见</text>
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">来访详述</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{rpjDetail.description }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
<text class="form-left-text">接待人</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{rpjDetail.receptionist_name}}</view>
|
||||
</view>
|
||||
<textarea class="apply-reason-text" v-model="formData.name" maxlength="250" placeholder="请输入" />
|
||||
</view>
|
||||
<view class="btn">
|
||||
<button type="default" class="save-btn">同意</button>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
</block>
|
||||
<block v-else>
|
||||
<block v-else-if="cateType==='opl_fire'">
|
||||
<view class="ticket-info">
|
||||
<view class="form-item border-bottom">
|
||||
<view class="form-left">
|
||||
|
|
@ -217,7 +210,7 @@
|
|||
<text class="form-left-text">工单名称</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{oplDetail.ticket_.title}}</view>
|
||||
<view v-if="oplDetail.ticket_">{{oplDetail.ticket_.title}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item">
|
||||
|
|
@ -225,7 +218,7 @@
|
|||
<text class="form-left-text">工单状态</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{oplDetail.ticket_.state_.name}}</view>
|
||||
<view v-if="oplDetail.ticket_">{{oplDetail.ticket_.state_.name}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
|
@ -235,7 +228,7 @@
|
|||
<text class="form-left-text">作业名称</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{oplDetail.operation_.name}}</view>
|
||||
<view v-if="oplDetail.operation_">{{oplDetail.operation_.name}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
|
|
@ -243,7 +236,7 @@
|
|||
<text class="form-left-text">具体地点</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{oplDetail.operation_.place}}</view>
|
||||
<view v-if="oplDetail.operation_">{{oplDetail.operation_.place}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
|
|
@ -251,7 +244,7 @@
|
|||
<text class="form-left-text">作业状态</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{state_[oplDetail.operation_.state]}}</view>
|
||||
<view v-if="oplDetail.operation_">{{state_[oplDetail.operation_.state]}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
|
|
@ -259,7 +252,7 @@
|
|||
<text class="form-left-text">生产状态</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{oplDetail.operation_.state_work }}</view>
|
||||
<view v-if="oplDetail.operation_">{{oplDetail.operation_.state_work }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
|
|
@ -267,7 +260,7 @@
|
|||
<text class="form-left-text">作业区域</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{oplDetail.operation_.area_.name}}</view>
|
||||
<view v-if="oplDetail.operation_">{{oplDetail.operation_.area_.name}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
|
|
@ -275,7 +268,7 @@
|
|||
<text class="form-left-text">业务部门</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{oplDetail.operation_.dept_bus_.name}}</view>
|
||||
<view v-if="oplDetail.operation_">{{oplDetail.operation_.dept_bus_.name}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
|
|
@ -283,7 +276,7 @@
|
|||
<text class="form-left-text">属地部门</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{oplDetail.operation_.dept_ter_.name}}</view>
|
||||
<view v-if="oplDetail.operation_">{{oplDetail.operation_.dept_ter_.name}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item ">
|
||||
|
|
@ -291,7 +284,7 @@
|
|||
<text class="form-left-text">部门协调员</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{oplDetail.operation_.coordinator_.name}}</view>
|
||||
<view v-if="oplDetail.operation_">{{oplDetail.operation_.coordinator_.name}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
|
@ -326,7 +319,7 @@
|
|||
<text class="form-left-text">作业部门</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{oplDetail.dept_do_.name}}</view>
|
||||
<view v-if="oplDetail.dept_do_">{{oplDetail.dept_do_.name}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
|
|
@ -334,7 +327,7 @@
|
|||
<text class="form-left-text">作业负责人</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{oplDetail.charger_.name}}</view>
|
||||
<view v-if="oplDetail.charger_">{{oplDetail.charger_.name}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
|
|
@ -342,7 +335,7 @@
|
|||
<text class="form-left-text">作业监护人</text>
|
||||
</view>
|
||||
<view class="form-right">
|
||||
<view>{{oplDetail.monitor_.name}}</view>
|
||||
<view v-if="oplDetail.monitor_">{{oplDetail.monitor_.name}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-item border-bottom">
|
||||
|
|
@ -364,44 +357,45 @@
|
|||
</view>
|
||||
</view>
|
||||
</block>
|
||||
<view class="ticket-info" v-if="type==='handle'">
|
||||
<view class="form-item" v-if="ticketDetail.state_&&ticketDetail.state_.key==='opl_close'">
|
||||
<view class="form-left-text" style="width: 100%;">
|
||||
<text class="star">*</text>
|
||||
<text>作业情况</text>
|
||||
<block v-if="type=='handle'">
|
||||
<view class="ticket-info">
|
||||
<view class="form-item" v-if="ticketDetail.state_&&ticketDetail.state_.key==='opl_close'">
|
||||
<view class="form-left-text" style="width: 100%;">
|
||||
<text class="star">*</text>
|
||||
<text>作业情况</text>
|
||||
</view>
|
||||
<uni-data-select v-model="form.close_note" :localdata="noteOption" label="选择关闭原因"></uni-data-select>
|
||||
</view>
|
||||
<view class="form-item" v-if="ticketDetail.state_&&ticketDetail.state_.key==='opl_close'">
|
||||
<view class="form-left-text">
|
||||
<text class="star">*</text>
|
||||
<text>关闭处理</text>
|
||||
</view>
|
||||
<uni-data-select v-model="form.close_dos" :localdata="dosOption" label="关闭处理"></uni-data-select>
|
||||
</view>
|
||||
<view class="form-item" style="height: 300rpx;">
|
||||
<view class="form-left-text">
|
||||
<text class="star">*</text>
|
||||
<text>审批意见</text>
|
||||
</view>
|
||||
<textarea class="apply-reason-text" v-model="form.name" maxlength="250" placeholder="请输入" />
|
||||
</view>
|
||||
<view class="btn" style="display: flex;justify-content: space-between;margin-top: 20rpx;">
|
||||
<view class="left-content">
|
||||
<button class="mini-btn" size="mini" type="primary" @click="addNode">加签</button>
|
||||
<button class="mini-btn" size="mini" v-if="ticketDetail.state_&&ticketDetail.state_.enable_deliver"
|
||||
type="primary" plain @click="deliverNode">转交
|
||||
</button>
|
||||
</view>
|
||||
<view class="right-time">
|
||||
<button v-for="item in operationBtn" :key="item.id" class="mini-btn" size="mini"
|
||||
:type="item.attribute_type===2?'warn':'primary'" @click="operationSubmit(item.id)">
|
||||
{{item.name}}
|
||||
</button>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<uni-data-select v-model="form.close_note" :localdata="noteOption" label="选择关闭原因"></uni-data-select>
|
||||
</view>
|
||||
<view class="form-item" v-if="ticketDetail.state_&&ticketDetail.state_.key==='opl_close'">
|
||||
<view class="form-left-text">
|
||||
<text class="star">*</text>
|
||||
<text>关闭处理</text>
|
||||
</view>
|
||||
<uni-data-select v-model="form.close_dos" :localdata="dosOption" label="关闭处理"></uni-data-select>
|
||||
</view>
|
||||
<view class="form-item" style="height: 300rpx;">
|
||||
<view class="form-left-text">
|
||||
<text class="star">*</text>
|
||||
<text>审批意见</text>
|
||||
</view>
|
||||
<textarea class="apply-reason-text" v-model="form.name" maxlength="250" placeholder="请输入" />
|
||||
</view>
|
||||
<view class="btn" style="display: flex;justify-content: space-between;margin-top: 20rpx;">
|
||||
<view class="left-content">
|
||||
<button class="mini-btn" size="mini" type="primary" @click="addNode">加签</button>
|
||||
<button class="mini-btn" size="mini" v-if="ticketDetail.state_&&ticketDetail.state_.enable_deliver"
|
||||
type="primary" plain @click="deliverNode">转交
|
||||
</button>
|
||||
</view>
|
||||
<view class="right-time">
|
||||
<button v-for="item in operationBtn" :key="item.id" class="mini-btn" size="mini"
|
||||
:type="item.attribute_type===2?'warn':'primary'" @click="operationSubmit(item.id)">
|
||||
{{item.name}}
|
||||
</button>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</block>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
|
|
@ -528,7 +522,7 @@
|
|||
}
|
||||
},
|
||||
onLoad(params) {
|
||||
// debugger;
|
||||
debugger;
|
||||
console.log(params)
|
||||
that = this;
|
||||
that.ticketId = params.ticketId;
|
||||
|
|
@ -537,9 +531,11 @@
|
|||
that.type = params.type;
|
||||
},
|
||||
onShow() {
|
||||
debugger;
|
||||
console.log(this.type)
|
||||
if (this.cateType === 'visit') {
|
||||
this.getVisit();
|
||||
} else if (this.cateType === 'rparty') {
|
||||
} else if (this.cateType === 'rpj') {
|
||||
this.getRpj();
|
||||
} else {
|
||||
this.getOpl();
|
||||
|
|
@ -557,13 +553,15 @@
|
|||
},
|
||||
//访客详情
|
||||
getVisit() {
|
||||
this.$u.api.getVisit(this.ticketId).then(res => {
|
||||
debugger;
|
||||
this.$u.api.visitItem(this.projectId).then(res => {
|
||||
debugger;
|
||||
this.visitDetail = res;
|
||||
})
|
||||
},
|
||||
//入厂项目详情
|
||||
getRpj() {
|
||||
this.$u.api.getRpj(this.projectId).then((res) => {
|
||||
this.$u.api.rpjItem(this.projectId).then((res) => {
|
||||
// debugger;
|
||||
this.rpjDetail = res;
|
||||
});
|
||||
|
|
@ -571,7 +569,7 @@
|
|||
|
||||
//许可证详情
|
||||
getOpl() {
|
||||
this.$u.api.getOpl(this.projectId).then((res) => {
|
||||
this.$u.api.oplItem(this.projectId).then((res) => {
|
||||
// debugger;
|
||||
this.oplDetail = res;
|
||||
});
|
||||
|
|
|
|||
|
|
@ -2,18 +2,48 @@
|
|||
<view class="my_duty">
|
||||
<uni-nav-bar @clickLeft="goBack()" height="110rpx" leftWidth="200rpx" leftText="我的代办" leftIcon="left" border
|
||||
backgroundColor="#2cade8" color="#fff" fixed statusBar shadow></uni-nav-bar>
|
||||
<view class="my-top-search-nav">
|
||||
<view class="my-top-search-nav">
|
||||
<view class="search-wrap">
|
||||
<view class="search-body">
|
||||
<image class="left-img" src="../../../static/home/searchIcon.png" mode=""></image>
|
||||
<input class="search-input" v-show="isHetongShow" type="text" v-model="params.search"
|
||||
placeholder="请输入合同编号" />
|
||||
<input class="search-input" v-show="!isHetongShow" type="text" v-model="params.search"
|
||||
placeholder="请输入项目代码" />
|
||||
<view class="right-btn" @click="searchHandle">
|
||||
搜索
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<!-- 主体 导航栏 -->
|
||||
<view class="tabbar-title">
|
||||
<view :class="{'text-title':true, 'active':isHetongShow}" @click="changeList('hetong')">我的代办</view>
|
||||
<view :class="{'text-title':true, 'active':!isHetongShow}" @click="changeList('xiangmu')">全部工单</view>
|
||||
<!-- <view class="right-pick" @click="showDrawer">
|
||||
<image class="right-img" src="../../static/project_manegment/shaixuan.png" mode=""></image>
|
||||
<text>筛选</text>
|
||||
|
||||
</view> -->
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<!-- <view class="my-top-search-nav">
|
||||
<view class="search-wrap">
|
||||
<view class="search-body">
|
||||
<image class="left-img" src="../../../static/home/searchIcon.png" mode=""></image>
|
||||
<input class="search-input" type="text" v-model="search" placeholder="请输入" />
|
||||
<input class="search-input" type="text" v-model="params.search" placeholder="请输入" />
|
||||
<image class="right-img" src="../../../static/my/my_apply/zuofei.png" mode="" @click="resetSearch">
|
||||
</image>
|
||||
<view class="right-btn" @click="searchHandle">搜索</view>
|
||||
</view>
|
||||
<view class="right-btn allBtn" @click="searchShowAll">全部</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="empty-view"></view>
|
||||
<view class="empty-view">
|
||||
<view></view>
|
||||
</view>
|
||||
-->
|
||||
<view class="content">
|
||||
<view class="item-wrap" v-for="(val,index) in ticketList" :key="val.id">
|
||||
<view class="duty-item">
|
||||
|
|
@ -27,10 +57,14 @@
|
|||
<view class="info-details">更新时间:{{val.update_time}} </view>
|
||||
</view>
|
||||
<view class="bottom-btns">
|
||||
<view class="shenhezhong shenhe-status" @click="ticketHandle(val)">
|
||||
<view class="shenhezhong shenhe-status" @click="ticketHandle(val,'handle')" v-if="(val.act_state===1||val.act_state===3)&&val.state_.type===0">
|
||||
<image src="../../../static/my/my_apply/blue-time.png" mode=""></image>
|
||||
处理
|
||||
</view>
|
||||
<view class="shenhejieshu shenhe-status" @click="ticketHandle(val,'show')" v-else>
|
||||
<image src="../../../static/my/my_apply/tongguo.png" mode=""></image>
|
||||
查看
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
|
@ -43,9 +77,13 @@
|
|||
name: 'ticket',
|
||||
data() {
|
||||
return {
|
||||
search: '',
|
||||
pageSize: 10,
|
||||
pageNum: 1,
|
||||
params:{
|
||||
search: '',
|
||||
pageSize: 10,
|
||||
pageNum: 1,
|
||||
category:'duty'
|
||||
},
|
||||
isHetongShow:false,
|
||||
totalNum: 0,
|
||||
ticketList: [],
|
||||
}
|
||||
|
|
@ -55,7 +93,7 @@
|
|||
const totalPage = Math.ceil(this.totalNum / this.pageSize);
|
||||
if (this.pageNum < totalPage) {
|
||||
this.pageNum += 1;
|
||||
this._getMyApplyList(false);
|
||||
this.getTicketLists();
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: "已全部加载",
|
||||
|
|
@ -76,23 +114,15 @@
|
|||
methods: {
|
||||
getTicketLists() {
|
||||
let that = this;
|
||||
let obj = {};
|
||||
obj.category = 'all';
|
||||
obj.pageNum = this.pageNum;
|
||||
obj.pageSize = this.pageSize;
|
||||
if (that.search !== '') {
|
||||
obj.search = that.search;
|
||||
}
|
||||
obj.pageSize = this.pageSize;
|
||||
that.$u.api.getTickets(obj).then(res => {
|
||||
that.$u.api.getTickets(that.params).then(res => {
|
||||
that.ticketList = that.ticketList.concat(res.results);
|
||||
this.totalNum = res.count;
|
||||
})
|
||||
},
|
||||
ticketHandle(val) {
|
||||
let projectId = val.ticket_data.opl;//项目、许可证Id
|
||||
ticketHandle(val,type) {
|
||||
let projectId = val.ticket_data.visit?val.ticket_data.visit:val.ticket_data.rpj?val.ticket_data.rpj:val.ticket_data.opl;//项目、许可证Id visit
|
||||
let catetype = val.workflow_.key;
|
||||
const params = `?ticketId=${val.id}&projectId=${projectId}&cateType=${catetype}&type='handle'`;
|
||||
const params = `?ticketId=${val.id}&projectId=${projectId}&cateType=${catetype}&type=${type}`;
|
||||
uni.navigateTo({
|
||||
url: '../detail/ticketHandle' + params,
|
||||
})
|
||||
|
|
@ -114,6 +144,12 @@
|
|||
this.ticketList = [];
|
||||
this.getTicketLists();
|
||||
},
|
||||
searchShowAll(){
|
||||
debugger;
|
||||
uni.navigateTo({
|
||||
url: './ticketAll',
|
||||
})
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
|
@ -124,7 +160,8 @@
|
|||
}
|
||||
|
||||
>>>.uni-navbar__header,
|
||||
>>>.uni-status-bar {
|
||||
>>>.uni-status-bar ,
|
||||
.search-wrap{
|
||||
background-image: linear-gradient(254deg,
|
||||
#0ca7ee 0%,
|
||||
#005aff 100%,
|
||||
|
|
@ -194,6 +231,10 @@
|
|||
.shenhezhong {
|
||||
color: #2c6fd9;
|
||||
}
|
||||
|
||||
.shenhejieshu {
|
||||
color: #15a306;
|
||||
}
|
||||
|
||||
.shenhe-status image {
|
||||
width: 26rpx;
|
||||
|
|
@ -207,21 +248,22 @@
|
|||
left: 0;
|
||||
right: 0;
|
||||
z-index: 999;
|
||||
background-color: #f3fbff;
|
||||
}
|
||||
|
||||
.search-wrap {
|
||||
background-blend-mode: normal,
|
||||
normal;
|
||||
padding-bottom: 44rpx;
|
||||
background-blend-mode: normal,normal;
|
||||
padding-bottom: 20rpx;
|
||||
padding-top: 20rpx;
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
}
|
||||
|
||||
.search-body {
|
||||
width: 715rpx;
|
||||
width: 600upx;
|
||||
height: 78rpx;
|
||||
background-color: #ffffff;
|
||||
border-radius: 39rpx;
|
||||
margin: 0 auto;
|
||||
padding: 13rpx;
|
||||
padding-left: 25rpx;
|
||||
box-sizing: border-box;
|
||||
|
|
@ -260,4 +302,53 @@
|
|||
color: #ffffff;
|
||||
text-align: center;
|
||||
}
|
||||
.right-btn.allBtn{
|
||||
margin: 13rpx 0;
|
||||
}
|
||||
|
||||
|
||||
/* 主体-导航栏样式*/
|
||||
.tabbar-title {
|
||||
background-color: #FFFFFF;
|
||||
height: 100rpx;
|
||||
display: flex;
|
||||
/* justify-content: space-between; */
|
||||
padding: 0rpx 32rpx;
|
||||
box-sizing: border-box;
|
||||
font-size: 32rpx;
|
||||
line-height: 100rpx;
|
||||
color: #505050;
|
||||
}
|
||||
|
||||
.text-title {
|
||||
position: relative;
|
||||
margin-right: 40upx;
|
||||
}
|
||||
|
||||
.active.text-title::after {
|
||||
content: "";
|
||||
width: 46rpx;
|
||||
height: 4rpx;
|
||||
background-image: linear-gradient(90deg,
|
||||
#164cc3 0%,
|
||||
#2c6fd9 100%),
|
||||
linear-gradient(#085f56,
|
||||
#085f56);
|
||||
background-blend-mode: normal,
|
||||
normal;
|
||||
border-radius: 2rpx;
|
||||
position: absolute;
|
||||
bottom: 20rpx;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
}
|
||||
|
||||
.right-img {
|
||||
width: 32rpx;
|
||||
height: 31rpx;
|
||||
vertical-align: middle;
|
||||
margin-right: 9rpx;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,273 @@
|
|||
<template>
|
||||
<view class="my_duty">
|
||||
<uni-nav-bar @clickLeft="goBack()" height="110rpx" leftWidth="200rpx" leftText="全部工单" leftIcon="left" border
|
||||
backgroundColor="#2cade8" color="#fff" fixed statusBar shadow></uni-nav-bar>
|
||||
<view class="my-top-search-nav">
|
||||
<view class="search-wrap">
|
||||
<view class="search-body">
|
||||
<image class="left-img" src="../../../static/home/searchIcon.png" mode=""></image>
|
||||
<input class="search-input" type="text" v-model="search" placeholder="请输入" />
|
||||
<image class="right-img" src="../../../static/my/my_apply/zuofei.png" mode="" @click="resetSearch">
|
||||
</image>
|
||||
<view class="right-btn" @click="searchHandle">搜索</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="empty-view"></view>
|
||||
<view class="content">
|
||||
<view class="item-wrap" v-for="(val,index) in ticketList" :key="val.id">
|
||||
<view class="duty-item">
|
||||
<view class="top-info">
|
||||
<view class="info-title">{{val.title}}</view>
|
||||
</view>
|
||||
<view class="center-info">
|
||||
<view class="info-details">所属工作流:{{val.workflow_.name}}</view>
|
||||
<view class="info-details">工单状态:{{val.state_.name}}</view>
|
||||
<view class="info-details">提交时间:{{val.create_time}} </view>
|
||||
<view class="info-details">更新时间:{{val.update_time}} </view>
|
||||
</view>
|
||||
<view class="bottom-btns">
|
||||
<view class="shenhezhong shenhe-status" @click="ticketHandle(val)" v-if="val.state_.distribute_type===1&&val.participant_type===2">
|
||||
<image src="../../../static/my/my_apply/blue-time.png" mode=""></image>
|
||||
接单
|
||||
</view>
|
||||
<view class="shenhejieshu shenhe-status" @click="ticketShow(val)" v-else>
|
||||
<image src="../../../static/my/my_apply/tongguo.png" mode=""></image>
|
||||
查看
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'ticket',
|
||||
data() {
|
||||
return {
|
||||
params:{
|
||||
search: '',
|
||||
pageSize: 10,
|
||||
pageNum: 1,
|
||||
category:'all'
|
||||
},
|
||||
totalNum: 0,
|
||||
ticketList: [],
|
||||
}
|
||||
},
|
||||
//上拉加载
|
||||
onReachBottom() {
|
||||
const totalPage = Math.ceil(this.totalNum / this.pageSize);
|
||||
if (this.pageNum < totalPage) {
|
||||
this.pageNum += 1;
|
||||
this.getTicketLists();
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: "已全部加载",
|
||||
icon: 'none'
|
||||
})
|
||||
}
|
||||
},
|
||||
onShow() {
|
||||
this.ticketList = [];
|
||||
this.getTicketLists();
|
||||
},
|
||||
//下拉刷新
|
||||
onPullDownRefresh() {
|
||||
this.pageNum = 1;
|
||||
this.ticketList = [];
|
||||
this.getTicketLists();
|
||||
},
|
||||
methods: {
|
||||
getTicketLists() {
|
||||
let that = this;
|
||||
that.$u.api.getTickets(that.params).then(res => {
|
||||
that.ticketList = that.ticketList.concat(res.results);
|
||||
this.totalNum = res.count;
|
||||
})
|
||||
},
|
||||
|
||||
ticketShow(val) {
|
||||
let projectId = val.ticket_data.visit?val.ticket_data.visit:val.ticket_data.rpj?val.ticket_data.rpj:val.ticket_data.opl;//项目、许可证Id visit
|
||||
let catetype = val.workflow_.key;
|
||||
const params = `?ticketId=${val.id}&projectId=${projectId}&cateType=${catetype}&type='show'`;
|
||||
uni.navigateTo({
|
||||
url: '../detail/ticketHandle' + params,
|
||||
})
|
||||
},
|
||||
//接单
|
||||
ticketHandle(val) {
|
||||
let that = this;
|
||||
that.$u.api.ticketAccept(val.id).then(res => {
|
||||
that.getTicketLists();
|
||||
})
|
||||
},
|
||||
|
||||
goBack() {
|
||||
uni.navigateBack({
|
||||
delta: 1
|
||||
})
|
||||
},
|
||||
searchHandle() {
|
||||
this.pageNum = 1;
|
||||
this.ticketList = [];
|
||||
this.getTicketLists()
|
||||
},
|
||||
resetSearch() {
|
||||
this.pageNum = 1;
|
||||
this.search = "";
|
||||
this.ticketList = [];
|
||||
this.getTicketLists();
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.empty-view {
|
||||
height: 120rpx;
|
||||
}
|
||||
|
||||
>>>.uni-navbar__header,
|
||||
>>>.uni-status-bar {
|
||||
background-image: linear-gradient(254deg,
|
||||
#0ca7ee 0%,
|
||||
#005aff 100%,
|
||||
#2a8cff 100%,
|
||||
#54bdff 100%),
|
||||
linear-gradient(#e60012,
|
||||
#e60012);
|
||||
}
|
||||
|
||||
.my_duty {
|
||||
background-color: #f3fbff;
|
||||
}
|
||||
|
||||
.my_duty>>>.uni-navbar-btn-text text {
|
||||
font-size: 32rpx !important;
|
||||
}
|
||||
|
||||
.content {
|
||||
padding: 14rpx;
|
||||
}
|
||||
|
||||
.item-wrap {
|
||||
margin-bottom: 14rpx;
|
||||
}
|
||||
|
||||
.duty-item {
|
||||
width: 720rpx;
|
||||
background-color: #ffffff;
|
||||
border-radius: 10rpx;
|
||||
margin: 0 auto;
|
||||
padding: 24rpx 21rpx;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
.info-title {
|
||||
font-family: PingFang-SC-Medium;
|
||||
font-size: 30rpx;
|
||||
line-height: 72rpx;
|
||||
color: #3d3d3d;
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
.right-time {
|
||||
font-size: 24rpx;
|
||||
line-height: 72rpx;
|
||||
color: #ababab;
|
||||
}
|
||||
|
||||
.center-info {
|
||||
padding-bottom: 30rpx;
|
||||
border-bottom: 1rpx solid #eeeeee;
|
||||
}
|
||||
|
||||
.info-details {
|
||||
font-size: 28rpx;
|
||||
line-height: 40rpx;
|
||||
color: #5b5b5b;
|
||||
}
|
||||
|
||||
.bottom-btns {
|
||||
text-align: center;
|
||||
font-family: PingFang-SC-Medium;
|
||||
font-size: 28rpx;
|
||||
line-height: 83rpx;
|
||||
}
|
||||
|
||||
.shenhezhong {
|
||||
color: #2c6fd9;
|
||||
}
|
||||
|
||||
.shenhejieshu {
|
||||
color: #15a306;
|
||||
}
|
||||
|
||||
.shenhe-status image {
|
||||
width: 26rpx;
|
||||
height: 26rpx;
|
||||
margin-right: 10rpx;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.my-top-search-nav {
|
||||
position: fixed;
|
||||
left: 0;
|
||||
right: 0;
|
||||
z-index: 999;
|
||||
background-color: #f3fbff;
|
||||
}
|
||||
|
||||
.search-wrap {
|
||||
background-blend-mode: normal,normal;
|
||||
padding-bottom: 20rpx;
|
||||
padding-top: 20rpx;
|
||||
}
|
||||
|
||||
.search-body {
|
||||
width: 710upx;
|
||||
height: 78rpx;
|
||||
background-color: #ffffff;
|
||||
border-radius: 39rpx;
|
||||
padding: 13rpx;
|
||||
padding-left: 25rpx;
|
||||
box-sizing: border-box;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.search-body .search-input {
|
||||
height: 100%;
|
||||
flex: 1;
|
||||
padding-left: 12rpx;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
.left-img {
|
||||
width: 26rpx;
|
||||
height: 26rpx;
|
||||
|
||||
}
|
||||
|
||||
.right-img {
|
||||
width: 30rpx;
|
||||
height: 30rpx;
|
||||
margin-right: 10rpx;
|
||||
}
|
||||
|
||||
.right-btn {
|
||||
width: 110rpx;
|
||||
height: 58rpx;
|
||||
line-height: 58rpx;
|
||||
background-image: linear-gradient(0deg,
|
||||
#2da0f3 0%,
|
||||
#54bcff 100%);
|
||||
border-radius: 29rpx;
|
||||
font-size: 28rpx;
|
||||
color: #ffffff;
|
||||
text-align: center;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -4,38 +4,38 @@
|
|||
leftIcon="left" border backgroundColor="#2cade8" color="#fff" fixed statusBar shadow></uni-nav-bar>
|
||||
|
||||
<view class="wrap-view">
|
||||
<view class="item">
|
||||
<view class="title">姓名</view>
|
||||
<view class="item item_bottom_border">
|
||||
<view class="title">姓名</view>
|
||||
<view class="content">
|
||||
<text>{{userInfo.name}}</text>
|
||||
<!-- <input type="text" v-model="principal.mobile" maxlength="20" placeholder="请输入" /> -->
|
||||
</view>
|
||||
</view>
|
||||
<view class="item">
|
||||
<view class="item item_bottom_border">
|
||||
<view class="title">编号</view>
|
||||
<view class="content">
|
||||
<text>{{userInfo.number}}</text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="item">
|
||||
<view class="item item_bottom_border">
|
||||
<view class="title">身份证号</view>
|
||||
<view class="content">
|
||||
<text>{{userInfo.id_number}}</text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="item">
|
||||
<view class="item item_bottom_border">
|
||||
<view class="title">学历</view>
|
||||
<view class="content">
|
||||
<text>{{userInfo.qualification}}</text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="item">
|
||||
<view class="title">性别</view>
|
||||
<view class="item item_bottom_border">
|
||||
<view class="title">性别</view>
|
||||
<view class="content">
|
||||
<text>{{userInfo.gender}}</text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="item">
|
||||
</view>
|
||||
<view class="item item_bottom_border">
|
||||
<view class="title">岗位</view>
|
||||
<view class="content">
|
||||
<text>{{userInfo.post_name}}</text>
|
||||
|
|
@ -48,15 +48,18 @@
|
|||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="wrap-view">
|
||||
|
||||
<view class="wrap-view" style="box-shadow: 0 0 15px 5px #eeeeee;padding-bottom: 20upx;">
|
||||
<view class="item">
|
||||
<view class="title">信息修改:</view>
|
||||
<view class="content"></view>
|
||||
</view>
|
||||
<view class="item item_bottom_border">
|
||||
<view class="title">手机号</view>
|
||||
<view class="content">
|
||||
<input type="text" v-model="userInfo.phone" maxlength="20" placeholder="请输入" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="item">
|
||||
<view class="item item_bottom_border">
|
||||
<view class="title">邮箱</view>
|
||||
<view class="content">
|
||||
<input type="text" v-model="userInfo.email" maxlength="20" placeholder="请输入" />
|
||||
|
|
@ -65,8 +68,8 @@
|
|||
<view class="item" style="height: fit-content;">
|
||||
<view class="title">证件照</view>
|
||||
<view style="flex: 3;">
|
||||
<uni-file-picker v-model="userInfo.mobile" file-mediatype="image" mode="grid"
|
||||
file-extname="png,jpg" :limit="5" ref="files" :auto-upload="false" @select="select" />
|
||||
<uni-file-picker v-model="userInfo.mobile" file-mediatype="image" mode="grid" file-extname="png,jpg"
|
||||
:limit="5" ref="files" :auto-upload="false" @select="select" />
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
|
@ -142,12 +145,15 @@
|
|||
}
|
||||
|
||||
.item {
|
||||
border-bottom: 1rpx solid #eeeeee;
|
||||
margin: 0rpx 32rpx;
|
||||
display: flex;
|
||||
margin-top: 20rpx;
|
||||
}
|
||||
|
||||
|
||||
.item_bottom_border{
|
||||
border-bottom: 1rpx solid #eeeeee;
|
||||
}
|
||||
|
||||
.title {
|
||||
color: #212121;
|
||||
flex: 1;
|
||||
|
|
|
|||
Loading…
Reference in New Issue