完成工作单功能

This commit is contained in:
wuxw 2024-01-02 23:45:51 +08:00
parent afb6345d6b
commit c0d4f2ed78
9 changed files with 55 additions and 33 deletions

View File

@ -17,12 +17,20 @@
</div> </div>
<div class="form-group row"> <div class="form-group row">
<label class="col-sm-2 col-form-label"> <label class="col-sm-2 col-form-label">
<vc:i18n name='超时时间' namespace='addWorkType'></vc:i18n> <vc:i18n name='通知方式' namespace='addWorkType'></vc:i18n>
</label> </label>
<div class="col-sm-10"> <div class="col-sm-10">
<input v-model="addWorkTypeInfo.timeout" type="number" <select class="custom-select" v-model="addWorkTypeInfo.smsWay">
:placeholder="vc.i18n('必填,请填写超时时间','addWorkType')" class="form-control"> <option selected disabled value="">
{{vc.i18n('必填,请选择通知方式','addWorkType')}}
</option>
<option value="WECHAT">微信</option>
<option value="ALI_SMS">阿里短信</option>
</select>
<span v-if="addWorkTypeInfo.smsWay == 'WECHAT'">需要在系统下公众号中配置公众号,公众号为认证过的服务号,并且员工做了员工认证</span>
<span v-if="addWorkTypeInfo.smsWay == 'ALI_SMS'">需要在系统下小区配置中配置阿里云短信信息,模版为工单待处理模版和工单完成模版</span>
</div> </div>
</div> </div>
<div class="form-group row"> <div class="form-group row">
<label class="col-sm-2 col-form-label"> <label class="col-sm-2 col-form-label">
@ -35,17 +43,12 @@
</div> </div>
<div class="ibox-content"> <div class="ibox-content">
<button class="btn btn-primary float-right" type="button" v-on:click="saveWorkTypeInfo()"><i <button class="btn btn-primary float-right" type="button" v-on:click="saveWorkTypeInfo()">
class="fa fa-check"></i>&nbsp;
<span>
<vc:i18n name="保存"></vc:i18n> <vc:i18n name="保存"></vc:i18n>
</span>
</button> </button>
<button type="button" class="btn btn-warning float-right" style="margin-right:20px;" <button type="button" class="btn btn-warning float-right" style="margin-right:20px;"
data-dismiss="modal"> data-dismiss="modal">
<span>
<vc:i18n name="取消"></vc:i18n> <vc:i18n name="取消"></vc:i18n>
</span>
</button> </button>
</div> </div>
</div> </div>

View File

@ -5,7 +5,7 @@
addWorkTypeInfo: { addWorkTypeInfo: {
wtId: '', wtId: '',
typeName: '', typeName: '',
timeout: '', smsWay: '',
remark: '', remark: '',
} }
@ -35,11 +35,11 @@
errInfo: "类型名称不能超过200" errInfo: "类型名称不能超过200"
}, },
], ],
'addWorkTypeInfo.timeout': [ 'addWorkTypeInfo.smsWay': [
{ {
limit: "required", limit: "required",
param: "", param: "",
errInfo: "超时时间不能为空" errInfo: "通知方式不能为空"
}, },
], ],
'addWorkTypeInfo.remark': [ 'addWorkTypeInfo.remark': [
@ -90,7 +90,7 @@
clearAddWorkTypeInfo: function () { clearAddWorkTypeInfo: function () {
$that.addWorkTypeInfo = { $that.addWorkTypeInfo = {
typeName: '', typeName: '',
timeout: '', smsWay: '',
remark: '', remark: '',
}; };

View File

@ -17,11 +17,16 @@
</div> </div>
<div class="form-group row"> <div class="form-group row">
<label class="col-sm-2 col-form-label"> <label class="col-sm-2 col-form-label">
<vc:i18n name='超时时间' namespace='editWorkType'></vc:i18n> <vc:i18n name='通知方式' namespace='editWorkType'></vc:i18n>
</label> </label>
<div class="col-sm-10"> <div class="col-sm-10">
<input v-model="editWorkTypeInfo.timeout" type="number" <select class="custom-select" v-model="editWorkTypeInfo.smsWay">
:placeholder="vc.i18n('必填,请填写超时时间','editWorkType')" class="form-control"> <option selected disabled value="">
{{vc.i18n('必填,请选择通知方式','editWorkType')}}
</option>
<option value="WECHAT">微信</option>
<option value="ALI_SMS">阿里短信</option>
</select>
</div> </div>
</div> </div>
<div class="form-group row"> <div class="form-group row">

View File

@ -5,7 +5,7 @@
editWorkTypeInfo: { editWorkTypeInfo: {
wtId: '', wtId: '',
typeName: '', typeName: '',
timeout: '', smsWay: '',
remark: '', remark: '',
} }
@ -38,11 +38,11 @@
errInfo: "类型名称不能超过200" errInfo: "类型名称不能超过200"
}, },
], ],
'editWorkTypeInfo.timeout': [ 'editWorkTypeInfo.smsWay': [
{ {
limit: "required", limit: "required",
param: "", param: "",
errInfo: "超时时间不能为空" errInfo: "通知方式不能为空"
}, },
], ],
'editWorkTypeInfo.remark': [ 'editWorkTypeInfo.remark': [
@ -94,7 +94,7 @@
$that.editWorkTypeInfo = { $that.editWorkTypeInfo = {
wtId: '', wtId: '',
typeName: '', typeName: '',
timeout: '', smsWay: '',
remark: '', remark: '',
} }

View File

@ -6,7 +6,7 @@
<vc:i18n name='类型名称' namespace='workDetailType'></vc:i18n> <vc:i18n name='类型名称' namespace='workDetailType'></vc:i18n>
</th> </th>
<th class="text-center"> <th class="text-center">
<vc:i18n name='超时时间' namespace='workDetailType'></vc:i18n> <vc:i18n name='通知方式' namespace='workDetailType'></vc:i18n>
</th> </th>
<th class="text-center"> <th class="text-center">
<vc:i18n name='创建时间' namespace='workDetailType'></vc:i18n> <vc:i18n name='创建时间' namespace='workDetailType'></vc:i18n>
@ -20,7 +20,9 @@
<tr v-for="type in workDetailTypeInfo.types"> <tr v-for="type in workDetailTypeInfo.types">
<!-- <td class="text-center">{{workDetailType.wtId}}</td> --> <!-- <td class="text-center">{{workDetailType.wtId}}</td> -->
<td class="text-center">{{type.typeName}}</td> <td class="text-center">{{type.typeName}}</td>
<td class="text-center">{{type.timeout}}</td> <td class="text-center" v-if="type.smsWay == 'WECHAT'">微信</td>
<td class="text-center" v-else-if="type.smsWay == 'ALI_SMS'">阿里短信</td>
<td class="text-center" v-else>未知</td>
<td class="text-center">{{type.createTime}}</td> <td class="text-center">{{type.createTime}}</td>
<td class="text-center">{{type.remark || '-'}}</td> <td class="text-center">{{type.remark || '-'}}</td>
</tr> </tr>

View File

@ -158,7 +158,7 @@
<vc:i18n name="工作单类型" namespace="workDetail"></vc:i18n> <vc:i18n name="工作单类型" namespace="workDetail"></vc:i18n>
</a> </a>
</li> </li>
<li class="nav-item"> <li class="nav-item" v-if="workDetailInfo.workCycle == '2002'">
<a class="nav-link" v-bind:class="{active:workDetailInfo._currentTab == 'workDetailCycle'}" <a class="nav-link" v-bind:class="{active:workDetailInfo._currentTab == 'workDetailCycle'}"
v-on:click="changeTab('workDetailCycle')"> v-on:click="changeTab('workDetailCycle')">
<vc:i18n name="工作单周期" namespace="workDetail"></vc:i18n> <vc:i18n name="工作单周期" namespace="workDetail"></vc:i18n>

View File

@ -111,6 +111,9 @@
<th class="text-center"> <th class="text-center">
<vc:i18n name='创建时间' namespace='workPool'></vc:i18n> <vc:i18n name='创建时间' namespace='workPool'></vc:i18n>
</th> </th>
<th class="text-center">
<vc:i18n name='完成时间' namespace='workPool'></vc:i18n>
</th>
<th class="text-center"> <th class="text-center">
<vc:i18n name='操作'></vc:i18n> <vc:i18n name='操作'></vc:i18n>
</th> </th>
@ -127,8 +130,11 @@
<td class="text-center">{{work.startTime}}</br> <td class="text-center">{{work.startTime}}</br>
~{{work.endTime}} ~{{work.endTime}}
</td> </td>
<td class="text-center">{{work.stateName}}</td> <td class="text-center">{{work.stateName}}
<span v-if="work.state == 'C' && work.taskTimeout == 'Y'">(超时)</span>
</td>
<td class="text-center">{{work.createTime}}</td> <td class="text-center">{{work.createTime}}</td>
<td class="text-center">{{work.finishTime||'-'}}</td>
<td class="text-center"> <td class="text-center">
<div class="btn-group"> <div class="btn-group">
<button class="btn-white btn btn-xs" <button class="btn-white btn btn-xs"

View File

@ -14,12 +14,12 @@
},{ },{
name:'待处理', name:'待处理',
state:'W' state:'W'
},{
name:'处理中',
state:'D'
},{ },{
name:'处理完成', name:'处理完成',
state:'C' state:'C'
},{
name:'超时工作单',
state:'timeout'
}], }],
total: 0, total: 0,
records: 1, records: 1,
@ -58,9 +58,13 @@
_listWorkPools: function (_page, _rows) { _listWorkPools: function (_page, _rows) {
$that.workPoolInfo.conditions.page = _page; $that.workPoolInfo.conditions.page = _page;
$that.workPoolInfo.conditions.row = _rows; $that.workPoolInfo.conditions.row = _rows;
var param = { let param = {
params: $that.workPoolInfo.conditions params: JSON.parse(JSON.stringify($that.workPoolInfo.conditions))
}; };
if(param.params.state == 'timeout'){
param.params.state = 'C';
param.params.taskTimeout = 'Y'
}
//发送get请求 //发送get请求
vc.http.apiGet('/work.listWorkTask', vc.http.apiGet('/work.listWorkTask',
param, param,

View File

@ -54,7 +54,7 @@
<vc:i18n name='类型名称' namespace='workType'></vc:i18n> <vc:i18n name='类型名称' namespace='workType'></vc:i18n>
</th> </th>
<th class="text-center"> <th class="text-center">
<vc:i18n name='超时时间' namespace='workType'></vc:i18n> <vc:i18n name='通知方式' namespace='workType'></vc:i18n>
</th> </th>
<th class="text-center"> <th class="text-center">
<vc:i18n name='创建时间' namespace='workType'></vc:i18n> <vc:i18n name='创建时间' namespace='workType'></vc:i18n>
@ -71,7 +71,9 @@
<tr v-for="workType in workTypeInfo.workTypes"> <tr v-for="workType in workTypeInfo.workTypes">
<!-- <td class="text-center">{{workType.wtId}}</td> --> <!-- <td class="text-center">{{workType.wtId}}</td> -->
<td class="text-center">{{workType.typeName}}</td> <td class="text-center">{{workType.typeName}}</td>
<td class="text-center">{{workType.timeout}}</td> <td class="text-center" v-if="workType.smsWay == 'WECHAT'">微信</td>
<td class="text-center" v-else-if="workType.smsWay == 'ALI_SMS'">阿里短信</td>
<td class="text-center" v-else>未知</td>
<td class="text-center">{{workType.createTime}}</td> <td class="text-center">{{workType.createTime}}</td>
<td class="text-center">{{workType.remark || '-'}}</td> <td class="text-center">{{workType.remark || '-'}}</td>
<td class="text-center"> <td class="text-center">