|
|
@ -1,25 +1,36 @@ |
|
|
|
<template> |
|
|
|
<div> |
|
|
|
<el-card :class="{ 'box-card': source === 'visiual' }"> |
|
|
|
<el-form label-width="120px" |
|
|
|
<el-form |
|
|
|
label-width="120px" |
|
|
|
:model="form" |
|
|
|
class="div_form" |
|
|
|
:rules="rules" |
|
|
|
ref="ruleForm"> |
|
|
|
<el-form-item v-if="formType!=='add'" |
|
|
|
ref="ruleForm" |
|
|
|
> |
|
|
|
<el-form-item |
|
|
|
v-if="formType !== 'add'" |
|
|
|
label="操作方式" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
prop="addType"> |
|
|
|
prop="addType" |
|
|
|
> |
|
|
|
<el-radio-group v-model="addType"> |
|
|
|
<el-radio label="look">查看</el-radio> |
|
|
|
<template v-if="form.reportType != 'self_help'"> |
|
|
|
<el-radio label="edit" |
|
|
|
v-if="form.status === 'pending'">修改</el-radio> |
|
|
|
<el-radio label="cancel" |
|
|
|
v-if="form.status !== 'finished' && form.status !== 'canceled'">取消</el-radio> |
|
|
|
<el-radio label="edit" v-if="form.status === 'pending'" |
|
|
|
>修改</el-radio |
|
|
|
> |
|
|
|
<el-radio |
|
|
|
label="cancel" |
|
|
|
v-if="form.status !== 'finished' && form.status !== 'canceled'" |
|
|
|
>取消</el-radio |
|
|
|
> |
|
|
|
</template> |
|
|
|
<el-radio label="appoint" |
|
|
|
v-if="form.status === 'pending' || form.status === 'assigned'">指派</el-radio> |
|
|
|
<el-radio |
|
|
|
label="appoint" |
|
|
|
v-if="form.status === 'pending' || form.status === 'assigned'" |
|
|
|
>指派</el-radio |
|
|
|
> |
|
|
|
<!-- <el-radio label="finish" |
|
|
|
v-if=" |
|
|
|
(form.reportType == 'self_help' && |
|
|
@ -30,7 +41,8 @@ |
|
|
|
form.status === 'have_order' || |
|
|
|
(form.status == 'finished' && !form.evaluateFlag) |
|
|
|
">完成</el-radio> --> |
|
|
|
<el-radio label="finish" |
|
|
|
<el-radio |
|
|
|
label="finish" |
|
|
|
v-if=" |
|
|
|
(form.reportType == 'self_help' && |
|
|
|
form.serviceShowFlag && |
|
|
@ -38,172 +50,217 @@ |
|
|
|
form.status !== 'finished') || |
|
|
|
form.status === 'assigned' || |
|
|
|
form.status === 'have_order' |
|
|
|
">完成</el-radio> |
|
|
|
" |
|
|
|
>完成</el-radio |
|
|
|
> |
|
|
|
</el-radio-group> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item label="所属网格" |
|
|
|
<el-form-item |
|
|
|
label="所属网格" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
prop="gridId"> |
|
|
|
prop="gridId" |
|
|
|
> |
|
|
|
<div :class="{ 'visiual-form': source === 'visiual' }"> |
|
|
|
<el-input v-if="disabled" |
|
|
|
<el-input |
|
|
|
v-if="disabled" |
|
|
|
v-model="form.gridName" |
|
|
|
:disabled="disabled" |
|
|
|
class="item_width_1"></el-input> |
|
|
|
class="item_width_1" |
|
|
|
></el-input> |
|
|
|
<!-- <span >{{ form.gridName }}</span> --> |
|
|
|
<el-select v-else |
|
|
|
<el-select |
|
|
|
v-else |
|
|
|
v-model="form.gridId" |
|
|
|
filterable |
|
|
|
placeholder="请选择" |
|
|
|
class="item_width_1" |
|
|
|
clearable |
|
|
|
:disabled="disabled" |
|
|
|
@change="handleGridChange"> |
|
|
|
<el-option v-for="item in disabled ? optionsG : optionsEditG" |
|
|
|
@change="handleGridChange" |
|
|
|
> |
|
|
|
<el-option |
|
|
|
v-for="item in disabled ? optionsG : optionsEditG" |
|
|
|
:key="item.value" |
|
|
|
:label="item.label" |
|
|
|
:value="item.value"> |
|
|
|
:value="item.value" |
|
|
|
> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="需求类型" |
|
|
|
<el-form-item |
|
|
|
label="需求类型" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
prop="categoryCode"> |
|
|
|
|
|
|
|
prop="categoryCode" |
|
|
|
> |
|
|
|
<div :class="{ 'visiual-form': source === 'visiual' }"> |
|
|
|
<el-input v-if="disabled" |
|
|
|
<el-input |
|
|
|
v-if="disabled" |
|
|
|
v-model="form.categoryName" |
|
|
|
:disabled="disabled" |
|
|
|
class="item_width_1" |
|
|
|
clearable></el-input> |
|
|
|
<el-cascader v-else |
|
|
|
clearable |
|
|
|
></el-input> |
|
|
|
<el-cascader |
|
|
|
v-else |
|
|
|
v-model="form.categoryCodeArr" |
|
|
|
:options="demandOptions" |
|
|
|
:disabled="disabled" |
|
|
|
clearable |
|
|
|
class="item_width_1" |
|
|
|
@change="handleCateSlect"></el-cascader> |
|
|
|
@change="handleCateSlect" |
|
|
|
></el-cascader> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="上报类型" |
|
|
|
<el-form-item |
|
|
|
label="上报类型" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
prop="reportType"> |
|
|
|
|
|
|
|
prop="reportType" |
|
|
|
> |
|
|
|
<div :class="{ 'visiual-form': source === 'visiual' }"> |
|
|
|
<el-input v-if="disabled" |
|
|
|
<el-input |
|
|
|
v-if="disabled" |
|
|
|
v-model="form.reportTypeName" |
|
|
|
:disabled="disabled" |
|
|
|
class="item_width_1"></el-input> |
|
|
|
<el-select v-else |
|
|
|
class="item_width_1" |
|
|
|
></el-input> |
|
|
|
<el-select |
|
|
|
v-else |
|
|
|
v-model="form.reportType" |
|
|
|
filterable |
|
|
|
class="item_width_1" |
|
|
|
placeholder="请选择" |
|
|
|
clearable |
|
|
|
:disabled="disabled"> |
|
|
|
<el-option v-for="item in reportOptions" |
|
|
|
:disabled="disabled" |
|
|
|
> |
|
|
|
<el-option |
|
|
|
v-for="item in reportOptions" |
|
|
|
:key="item.value" |
|
|
|
:label="item.label" |
|
|
|
:value="item.value"> |
|
|
|
:value="item.value" |
|
|
|
> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="上报人" |
|
|
|
<el-form-item |
|
|
|
label="上报人" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
prop="reportUserName"> |
|
|
|
|
|
|
|
prop="reportUserName" |
|
|
|
> |
|
|
|
<div :class="{ 'visiual-form': source === 'visiual' }"> |
|
|
|
<el-input v-model="form.reportUserName" |
|
|
|
<el-input |
|
|
|
v-model="form.reportUserName" |
|
|
|
:disabled="disabled" |
|
|
|
placeholder="请输入" |
|
|
|
class="item_width_1" |
|
|
|
clearable></el-input> |
|
|
|
clearable |
|
|
|
></el-input> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="上报人手机号" |
|
|
|
<el-form-item |
|
|
|
label="上报人手机号" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
prop="reportUserMobile"> |
|
|
|
|
|
|
|
prop="reportUserMobile" |
|
|
|
> |
|
|
|
<div :class="{ 'visiual-form': source === 'visiual' }"> |
|
|
|
<el-input v-model="form.reportUserMobile" |
|
|
|
<el-input |
|
|
|
v-model="form.reportUserMobile" |
|
|
|
:disabled="disabled" |
|
|
|
placeholder="请输入" |
|
|
|
class="item_width_1" |
|
|
|
maxlength="11" |
|
|
|
clearable></el-input> |
|
|
|
clearable |
|
|
|
></el-input> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="上报时间" |
|
|
|
<el-form-item |
|
|
|
label="上报时间" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
prop="reportTime"> |
|
|
|
|
|
|
|
prop="reportTime" |
|
|
|
> |
|
|
|
<div :class="{ 'visiual-form': source === 'visiual' }"> |
|
|
|
<el-date-picker v-model="form.reportTime" |
|
|
|
<el-date-picker |
|
|
|
v-model="form.reportTime" |
|
|
|
type="datetime" |
|
|
|
class="item_width_1" |
|
|
|
clearable |
|
|
|
:disabled="disabled" |
|
|
|
value-format="yyyy-MM-dd HH:mm:ss" |
|
|
|
placeholder="选择日期时间"> |
|
|
|
placeholder="选择日期时间" |
|
|
|
> |
|
|
|
</el-date-picker> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="需求人" |
|
|
|
<el-form-item |
|
|
|
label="需求人" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
prop="demandUserId"> |
|
|
|
|
|
|
|
prop="demandUserId" |
|
|
|
> |
|
|
|
<div :class="{ 'visiual-form': source === 'visiual' }"> |
|
|
|
<el-input v-if="disabled" |
|
|
|
<el-input |
|
|
|
v-if="disabled" |
|
|
|
v-model="form.demandUserName" |
|
|
|
:disabled="disabled" |
|
|
|
class="item_width_1"></el-input> |
|
|
|
<el-select v-else |
|
|
|
v-model="selectDemandUser" |
|
|
|
class="item_width_1" |
|
|
|
></el-input> |
|
|
|
<el-select |
|
|
|
v-else |
|
|
|
v-model="form.demandUserId" |
|
|
|
class="item_width_1" |
|
|
|
filterable |
|
|
|
:disabled="disabled" |
|
|
|
placeholder="请选择" |
|
|
|
clearable |
|
|
|
@change="handleDemandChange"> |
|
|
|
<el-option v-for="item in demandUserList" |
|
|
|
@change="handleDemandChange" |
|
|
|
> |
|
|
|
<el-option |
|
|
|
v-for="item in demandUserList" |
|
|
|
:key="item.demandUserId" |
|
|
|
:label="item.label" |
|
|
|
:value="item"> |
|
|
|
:value="item.demandUserId" |
|
|
|
> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="服务时间" |
|
|
|
<el-form-item |
|
|
|
label="服务时间" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
prop="wantServiceTime"> |
|
|
|
|
|
|
|
prop="wantServiceTime" |
|
|
|
> |
|
|
|
<div :class="{ 'visiual-form': source === 'visiual' }"> |
|
|
|
<el-date-picker v-model="form.wantServiceTime" |
|
|
|
<el-date-picker |
|
|
|
v-model="form.wantServiceTime" |
|
|
|
type="datetime" |
|
|
|
clearable |
|
|
|
:disabled="disabled" |
|
|
|
value-format="yyyy-MM-dd HH:mm:ss" |
|
|
|
placeholder="选择日期时间"> |
|
|
|
placeholder="选择日期时间" |
|
|
|
> |
|
|
|
</el-date-picker> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="需求内容" |
|
|
|
<el-form-item |
|
|
|
label="需求内容" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
prop="content"> |
|
|
|
|
|
|
|
prop="content" |
|
|
|
> |
|
|
|
<div :class="{ 'visiual-form': source === 'visiual' }"> |
|
|
|
<el-input v-model="form.content" |
|
|
|
<el-input |
|
|
|
v-model="form.content" |
|
|
|
:autosize="{ minRows: 2, maxRows: 10 }" |
|
|
|
:disabled="disabled" |
|
|
|
type="textarea" |
|
|
|
clearable |
|
|
|
class="cell-width-area" |
|
|
|
placeholder="请输入内容"></el-input> |
|
|
|
placeholder="请输入内容" |
|
|
|
></el-input> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item v-if=" |
|
|
|
<el-form-item |
|
|
|
v-if=" |
|
|
|
addType === 'add' || |
|
|
|
addType === 'appoint' || |
|
|
|
addType == 'finish' || |
|
|
@ -211,59 +268,75 @@ |
|
|
|
" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
label="服务方" |
|
|
|
prop="serviceType"> |
|
|
|
|
|
|
|
prop="serviceType" |
|
|
|
> |
|
|
|
<div :class="{ 'visiual-form': source === 'visiual' }"> |
|
|
|
<template v-if="disabled && addType !== 'appoint'"> |
|
|
|
<el-input v-model="form.serviceShowName" |
|
|
|
<el-input |
|
|
|
v-model="form.serviceShowName" |
|
|
|
:disabled="disabled" |
|
|
|
class="item_width_1"></el-input> |
|
|
|
class="item_width_1" |
|
|
|
></el-input> |
|
|
|
</template> |
|
|
|
<template v-else> |
|
|
|
<el-select v-model="form.serviceType" |
|
|
|
<el-select |
|
|
|
v-model="form.serviceType" |
|
|
|
class="item_width_1-small" |
|
|
|
placeholder="请选择" |
|
|
|
clearable |
|
|
|
:disabled="disabled && addType !== 'appoint'" |
|
|
|
@change="handleServiceChange('add', $event)"> |
|
|
|
<el-option v-for="item in serviceOptions" |
|
|
|
@change="handleServiceChange('add', $event)" |
|
|
|
> |
|
|
|
<el-option |
|
|
|
v-for="item in serviceOptions" |
|
|
|
:key="item.value" |
|
|
|
:label="item.label" |
|
|
|
:value="item.value"> |
|
|
|
:value="item.value" |
|
|
|
> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
- |
|
|
|
<el-select v-model="form.serverId" |
|
|
|
<el-select |
|
|
|
v-model="form.serverId" |
|
|
|
class="item_width_1-middle" |
|
|
|
filterable |
|
|
|
placeholder="请选择" |
|
|
|
clearable |
|
|
|
:disabled="disabled && addType !== 'appoint'"> |
|
|
|
<el-option v-for="item in serviceOptiondList" |
|
|
|
:disabled="disabled && addType !== 'appoint'" |
|
|
|
> |
|
|
|
<el-option |
|
|
|
v-for="item in serviceOptiondList" |
|
|
|
:key="item.value" |
|
|
|
:label="item.label" |
|
|
|
:value="item.value"> |
|
|
|
:value="item.value" |
|
|
|
> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</template> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item v-if="addType == 'look' && form.status == 'canceled'" |
|
|
|
<el-form-item |
|
|
|
v-if="addType == 'look' && form.status == 'canceled'" |
|
|
|
label="取消时间" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
prop="cancelTime"> |
|
|
|
prop="cancelTime" |
|
|
|
> |
|
|
|
<span>{{ form.cancelTime }}</span> |
|
|
|
</el-form-item> |
|
|
|
<template v-if=" |
|
|
|
<template |
|
|
|
v-if=" |
|
|
|
(addType == 'finish' && form.reportType != 'self_help') || |
|
|
|
(addType == 'look' && form.status == 'finished') |
|
|
|
"> |
|
|
|
<el-form-item label="实际服务时间" |
|
|
|
" |
|
|
|
> |
|
|
|
<el-form-item |
|
|
|
label="实际服务时间" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
prop="serviceStartTime"> |
|
|
|
|
|
|
|
prop="serviceStartTime" |
|
|
|
> |
|
|
|
<div :class="{ 'visiual-form': source === 'visiual' }"> |
|
|
|
<el-date-picker v-model="finishServiceTime" |
|
|
|
<el-date-picker |
|
|
|
v-model="finishServiceTime" |
|
|
|
class="item_width_1-min" |
|
|
|
clearable |
|
|
|
:disabled="disabled && addType != 'finish'" |
|
|
@ -272,50 +345,68 @@ |
|
|
|
start-placeholder="开始日期" |
|
|
|
end-placeholder="结束日期" |
|
|
|
value-format="yyyy-MM-dd HH:mm:ss" |
|
|
|
@change="handelBlurServiceTime"> |
|
|
|
@change="handelBlurServiceTime" |
|
|
|
> |
|
|
|
</el-date-picker> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="完成情况" |
|
|
|
<el-form-item |
|
|
|
label="完成情况" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
prop="finishResult"> |
|
|
|
<el-radio v-model="form.finishResult" |
|
|
|
prop="finishResult" |
|
|
|
> |
|
|
|
<el-radio |
|
|
|
v-model="form.finishResult" |
|
|
|
label="resolved" |
|
|
|
:disabled="disabled && addType != 'finish'">已解决</el-radio> |
|
|
|
<el-radio v-model="form.finishResult" |
|
|
|
:disabled="disabled && addType != 'finish'" |
|
|
|
>已解决</el-radio |
|
|
|
> |
|
|
|
<el-radio |
|
|
|
v-model="form.finishResult" |
|
|
|
label="unresolved" |
|
|
|
:disabled="disabled && addType != 'finish'">未解决</el-radio> |
|
|
|
:disabled="disabled && addType != 'finish'" |
|
|
|
>未解决</el-radio |
|
|
|
> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="评价" |
|
|
|
<el-form-item |
|
|
|
label="评价" |
|
|
|
prop="score" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
class="form-score"> |
|
|
|
<el-rate v-model="form.score" |
|
|
|
class="form-score" |
|
|
|
> |
|
|
|
<el-rate |
|
|
|
v-model="form.score" |
|
|
|
:allow-half="true" |
|
|
|
:disabled="disabled && addType != 'finish'"></el-rate> |
|
|
|
:disabled="disabled && addType != 'finish'" |
|
|
|
></el-rate> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="备注" |
|
|
|
<el-form-item |
|
|
|
label="备注" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
prop="finishDesc"> |
|
|
|
|
|
|
|
prop="finishDesc" |
|
|
|
> |
|
|
|
<div :class="{ 'visiual-form': source === 'visiual' }"> |
|
|
|
<el-input v-model="form.finishDesc" |
|
|
|
<el-input |
|
|
|
v-model="form.finishDesc" |
|
|
|
:autosize="{ minRows: 2, maxRows: 10 }" |
|
|
|
:disabled="disabled && addType != 'finish'" |
|
|
|
type="textarea" |
|
|
|
clearable |
|
|
|
class="cell-width-area" |
|
|
|
placeholder="请输入内容"></el-input> |
|
|
|
placeholder="请输入内容" |
|
|
|
></el-input> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
</template> |
|
|
|
<template v-if="addType == 'finish' && form.reportType == 'self_help'"> |
|
|
|
<el-form-item label="实际服务时间" |
|
|
|
<el-form-item |
|
|
|
label="实际服务时间" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
prop="serviceStartTime"> |
|
|
|
|
|
|
|
prop="serviceStartTime" |
|
|
|
> |
|
|
|
<div :class="{ 'visiual-form-pickerrange': source === 'visiual' }"> |
|
|
|
<el-date-picker v-model="finishServiceTime" |
|
|
|
<el-date-picker |
|
|
|
v-model="finishServiceTime" |
|
|
|
class="item_width_1-min" |
|
|
|
clearable |
|
|
|
:disabled="disabled && addType != 'finish'" |
|
|
@ -324,7 +415,8 @@ |
|
|
|
start-placeholder="开始日期" |
|
|
|
end-placeholder="结束日期" |
|
|
|
value-format="yyyy-MM-dd HH:mm:ss" |
|
|
|
@change="handelBlurServiceTime"> |
|
|
|
@change="handelBlurServiceTime" |
|
|
|
> |
|
|
|
</el-date-picker> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
@ -332,17 +424,17 @@ |
|
|
|
</el-form> |
|
|
|
|
|
|
|
<div class="div-btn"> |
|
|
|
<el-button size="small" |
|
|
|
@click="handlerClose">关闭</el-button> |
|
|
|
<el-button v-if="addType != 'look'" |
|
|
|
<el-button size="small" @click="handlerClose">关闭</el-button> |
|
|
|
<el-button |
|
|
|
v-if="addType != 'look'" |
|
|
|
style="margin-left: 20px" |
|
|
|
type="primary" |
|
|
|
size="small" |
|
|
|
@click="handleSubmit">提交</el-button> |
|
|
|
@click="handleSubmit" |
|
|
|
>提交</el-button |
|
|
|
> |
|
|
|
</div> |
|
|
|
|
|
|
|
</el-card> |
|
|
|
|
|
|
|
</div> |
|
|
|
</template> |
|
|
|
|
|
|
@ -363,25 +455,26 @@ export default { |
|
|
|
// type: String, |
|
|
|
// default: "look", |
|
|
|
// }, |
|
|
|
source: {//展示来源:manage 管理平台 visiual 可视化平台 |
|
|
|
source: { |
|
|
|
//展示来源:manage 管理平台 visiual 可视化平台 |
|
|
|
type: String, |
|
|
|
default: 'manage' |
|
|
|
default: "manage", |
|
|
|
}, |
|
|
|
icResiUserId: { |
|
|
|
type: String, |
|
|
|
default: '' |
|
|
|
default: "", |
|
|
|
}, |
|
|
|
selGridId: { |
|
|
|
type: String, |
|
|
|
default: '' |
|
|
|
} |
|
|
|
default: "", |
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
data() { |
|
|
|
return { |
|
|
|
btnLoading: false, |
|
|
|
pageLoading: false, |
|
|
|
addType: 'look', |
|
|
|
addType: "look", |
|
|
|
form: { |
|
|
|
gridId: "", |
|
|
|
categoryCodeArr: [], |
|
|
@ -458,23 +551,33 @@ export default { |
|
|
|
addType(val) { |
|
|
|
this.formatRowForm(val); |
|
|
|
}, |
|
|
|
"form.demandUserId": function (val) { |
|
|
|
this.handleDemandChange(val); |
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
async created() { |
|
|
|
|
|
|
|
if (this.selGridId) { |
|
|
|
this.form.gridId = this.selGridId; |
|
|
|
} |
|
|
|
this.customerId = localStorage.getItem("customerId"); |
|
|
|
this.getGridList('addorupdate'); |
|
|
|
this.getGridList("addorupdate"); |
|
|
|
this.getDemandOptions(); |
|
|
|
await this.getDemandUserList(); |
|
|
|
this.getServiceuserList(); |
|
|
|
this.getDictOptions(); |
|
|
|
if (this.formType === 'add') { |
|
|
|
this.addType = 'add' |
|
|
|
if (this.formType === "add") { |
|
|
|
this.addType = "add"; |
|
|
|
} else { |
|
|
|
this.getInfo(); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (this.icResiUserId && this.formType === "add") { |
|
|
|
this.demandUserList.forEach((item) => { |
|
|
|
if (item.demandUserId == this.icResiUserId) |
|
|
|
this.form.demandUserId = item.demandUserId; |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
this.pageLoading = true; |
|
|
|
}, |
|
|
@ -497,11 +600,19 @@ export default { |
|
|
|
} |
|
|
|
}, |
|
|
|
handleDemandChange(val) { |
|
|
|
console.log("val", val, this.selectDemandUser); |
|
|
|
this.selectDemandUser = val.label; |
|
|
|
this.form.demandUserName = val.demandUserName; |
|
|
|
this.form.demandUserMobile = val.demandUserMobile; |
|
|
|
this.form.demandUserId = val.demandUserId; |
|
|
|
console.log("val", val); |
|
|
|
// this.selectDemandUser = val; |
|
|
|
if (val) { |
|
|
|
const { demandUserList } = this; |
|
|
|
let item = demandUserList.find((item) => item.demandUserId == val); |
|
|
|
if (item) { |
|
|
|
this.form.demandUserName = item.demandUserName; |
|
|
|
this.form.demandUserMobile = item.demandUserMobile; |
|
|
|
return; |
|
|
|
} |
|
|
|
} |
|
|
|
this.form.demandUserName = ""; |
|
|
|
this.form.demandUserMobile = ""; |
|
|
|
}, |
|
|
|
handelBlurServiceTime(val) { |
|
|
|
console.log("val", val); |
|
|
@ -516,8 +627,10 @@ export default { |
|
|
|
else this.getServiceuserList(val, "query_demand"); |
|
|
|
} else this.getServiceuserList(val, ""); |
|
|
|
}, |
|
|
|
handleGridChange (val) { |
|
|
|
this.getDemandUserList(); |
|
|
|
async handleGridChange(val) { |
|
|
|
console.log("网格改变了", val); |
|
|
|
await this.getDemandUserList(); |
|
|
|
this.form.demandUserId = ""; |
|
|
|
}, |
|
|
|
|
|
|
|
handelBlurServiceTime(val) { |
|
|
@ -559,12 +672,10 @@ export default { |
|
|
|
if (addType == "finish") { |
|
|
|
if (row.serviceStartTime && row.serviceEndTime) { |
|
|
|
this.finishServiceTime = [row.serviceStartTime, row.serviceEndTime]; |
|
|
|
|
|
|
|
} else { |
|
|
|
this.finishServiceTime = [] |
|
|
|
this.finishServiceTime = []; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
this.form.finishResult = "resolved"; |
|
|
|
this.form.score = 5; |
|
|
|
} |
|
|
@ -578,10 +689,6 @@ export default { |
|
|
|
if (item.value === row.categoryCode) |
|
|
|
this.form.categoryCode = [row.categoryCode]; |
|
|
|
}); |
|
|
|
this.demandUserList.forEach((item) => { |
|
|
|
if (item.demandUserId == row.demandUserId) |
|
|
|
this.selectDemandUser = item.label; |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
this.dialogVisible = true; |
|
|
@ -702,9 +809,8 @@ export default { |
|
|
|
if (res.code !== 0) { |
|
|
|
return this.$message.error(res.msg); |
|
|
|
} else { |
|
|
|
|
|
|
|
this.$emit("handleClose") |
|
|
|
|
|
|
|
this.$emit("handleClose"); |
|
|
|
return this.$message.success("需求上报成功"); |
|
|
|
} |
|
|
|
}) |
|
|
|
.catch(() => { |
|
|
@ -803,17 +909,6 @@ export default { |
|
|
|
} else { |
|
|
|
console.log("获取查询详情成功", res.data); |
|
|
|
this.demandUserList = res.data; |
|
|
|
|
|
|
|
if (this.icResiUserId && this.formType === 'add') { |
|
|
|
this.demandUserList.forEach((item) => { |
|
|
|
|
|
|
|
if (item.demandUserId == this.icResiUserId) |
|
|
|
this.selectDemandUser = item.label; |
|
|
|
}); |
|
|
|
this.form.demandUserId = this.icResiUserId |
|
|
|
|
|
|
|
this.form.gridId = this.selGridId |
|
|
|
} |
|
|
|
} |
|
|
|
}) |
|
|
|
.catch(() => { |
|
|
@ -929,8 +1024,10 @@ export default { |
|
|
|
], |
|
|
|
}; |
|
|
|
|
|
|
|
this.finishServiceTime = [this.form.serviceStartTime, this.form.serviceEndTime] |
|
|
|
|
|
|
|
this.finishServiceTime = [ |
|
|
|
this.form.serviceStartTime, |
|
|
|
this.form.serviceEndTime, |
|
|
|
]; |
|
|
|
} |
|
|
|
}) |
|
|
|
.catch(() => { |
|
|
|