|
|
|
@ -1,160 +1,57 @@ |
|
|
|
<template> |
|
|
|
<div> |
|
|
|
<div |
|
|
|
class="dialog-h-content scroll-h" |
|
|
|
:class="{ 'visiual-form': source === 'visiual' }" |
|
|
|
> |
|
|
|
<el-form |
|
|
|
v-if="formType === 'add'" |
|
|
|
ref="ref_form" |
|
|
|
:inline="true" |
|
|
|
:model="formData" |
|
|
|
:rules="dataRule" |
|
|
|
class="div_form" |
|
|
|
> |
|
|
|
<div class="dialog-h-content scroll-h" :class="{ 'visiual-form': source === 'visiual' }"> |
|
|
|
<el-form v-if="formType === 'add'" ref="ref_form" :inline="true" :model="formData" :rules="dataRule" |
|
|
|
class="div_form"> |
|
|
|
<!-- 服务类别 --> |
|
|
|
<el-form-item |
|
|
|
label="服务类别" |
|
|
|
style="display: block" |
|
|
|
label-width="150px" |
|
|
|
prop="serviceTypeLevel2Id" |
|
|
|
> |
|
|
|
<el-select |
|
|
|
class="u-item-width-communitycascader" |
|
|
|
v-model="formData.serviceTypeLevel1Id" |
|
|
|
placeholder="请选择" |
|
|
|
clearable |
|
|
|
@change="handleChangeServiceTypeLevel1" |
|
|
|
> |
|
|
|
<el-option |
|
|
|
v-for="item in serviceTypesLevel1" |
|
|
|
:key="item.id" |
|
|
|
:label="item.name" |
|
|
|
:value="item.id" |
|
|
|
> |
|
|
|
<el-form-item label="服务类别" style="display: block" label-width="150px" prop="serviceTypeLevel2Id"> |
|
|
|
<el-select class="u-item-width-communitycascader" v-model="formData.serviceTypeLevel1Id" placeholder="请选择" |
|
|
|
clearable @change="handleChangeServiceTypeLevel1"> |
|
|
|
<el-option v-for="item in serviceTypesLevel1" :key="item.id" :label="item.name" :value="item.id"> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
- |
|
|
|
<el-select |
|
|
|
class="u-item-width-communitycascader" |
|
|
|
v-model="formData.serviceTypeLevel2Id" |
|
|
|
placeholder="请选择" |
|
|
|
@change="handleChangeServiceTypeLevel2" |
|
|
|
clearable |
|
|
|
> |
|
|
|
<el-option |
|
|
|
v-for="item in serviceTypesLevel2" |
|
|
|
:key="item.id" |
|
|
|
:label="item.name" |
|
|
|
:value="item.id" |
|
|
|
> |
|
|
|
<el-select class="u-item-width-communitycascader" v-model="formData.serviceTypeLevel2Id" placeholder="请选择" |
|
|
|
@change="handleChangeServiceTypeLevel2" clearable> |
|
|
|
<el-option v-for="item in serviceTypesLevel2" :key="item.id" :label="item.name" :value="item.id"> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item |
|
|
|
label="服务事项" |
|
|
|
prop="serviceName" |
|
|
|
label-width="150px" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
style="display: block" |
|
|
|
> |
|
|
|
<el-input |
|
|
|
class="item_width_1" |
|
|
|
placeholder="请输入服务事项" |
|
|
|
v-model="formData.serviceName" |
|
|
|
> |
|
|
|
<el-form-item label="服务事项" prop="serviceName" label-width="150px" :class="{ 'form-item': source === 'visiual' }" |
|
|
|
style="display: block"> |
|
|
|
<el-input class="item_width_1" placeholder="请输入服务事项" v-model="formData.serviceName"> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item |
|
|
|
label="服务内容" |
|
|
|
prop="remark" |
|
|
|
label-width="150px" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
style="display: block" |
|
|
|
> |
|
|
|
<el-input |
|
|
|
class="item_width_1" |
|
|
|
type="textarea" |
|
|
|
maxlength="1000" |
|
|
|
show-word-limit |
|
|
|
:rows="3" |
|
|
|
placeholder="请输入服务内容,不超过1000字" |
|
|
|
v-model="formData.remark" |
|
|
|
></el-input> |
|
|
|
<el-form-item label="服务内容" prop="remark" label-width="150px" :class="{ 'form-item': source === 'visiual' }" |
|
|
|
style="display: block"> |
|
|
|
<el-input class="item_width_1" type="textarea" maxlength="1000" show-word-limit :rows="3" |
|
|
|
placeholder="请输入服务内容,不超过1000字" v-model="formData.remark"></el-input> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item |
|
|
|
label="服务范围" |
|
|
|
prop="objList" |
|
|
|
label-width="150px" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
style="display: block" |
|
|
|
> |
|
|
|
<el-cascader |
|
|
|
class="item_width_1" |
|
|
|
ref="myCascader" |
|
|
|
v-model="scopeIdArray" |
|
|
|
collapse-tags |
|
|
|
:key="iscascaderShow" |
|
|
|
:options="casOptions" |
|
|
|
:props="optionProps" |
|
|
|
:show-all-levels="false" |
|
|
|
@change="handleChangeScope" |
|
|
|
></el-cascader> |
|
|
|
<el-form-item label="服务范围" prop="objList" label-width="150px" :class="{ 'form-item': source === 'visiual' }" |
|
|
|
style="display: block"> |
|
|
|
<el-cascader class="item_width_1" ref="myCascader" v-model="scopeIdArray" collapse-tags :key="iscascaderShow" |
|
|
|
:options="casOptions" :props="optionProps" :show-all-levels="false" @change="handleChangeScope"></el-cascader> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item |
|
|
|
label="服务时间" |
|
|
|
label-width="150px" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
prop="serviceTimeStart" |
|
|
|
> |
|
|
|
<el-date-picker |
|
|
|
v-model="formData.serviceTimeStart" |
|
|
|
:picker-options="startPickerOptions" |
|
|
|
class="item_width_2" |
|
|
|
style="width: 220px" |
|
|
|
type="date" |
|
|
|
value-format="yyyy-MM-dd HH:mm:ss" |
|
|
|
value="yyyy-MM-dd" |
|
|
|
placeholder="开始时间" |
|
|
|
> |
|
|
|
<el-form-item label="服务时间" label-width="150px" :class="{ 'form-item': source === 'visiual' }" |
|
|
|
prop="serviceTimeStart"> |
|
|
|
<el-date-picker v-model="formData.serviceTimeStart" :picker-options="startPickerOptions" class="item_width_2" |
|
|
|
style="width: 220px" type="date" value-format="yyyy-MM-dd HH:mm:ss" value="yyyy-MM-dd" placeholder="开始时间"> |
|
|
|
</el-date-picker> |
|
|
|
<span class="u-data-tag">至</span> |
|
|
|
<el-date-picker |
|
|
|
v-model="formData.serviceTimeEnd" |
|
|
|
:picker-options="endPickerOptions" |
|
|
|
class="item_width_2 u-data-tag" |
|
|
|
style="width: 220px" |
|
|
|
type="date" |
|
|
|
value-format="yyyy-MM-dd HH:mm:ss" |
|
|
|
value="yyyy-MM-dd" |
|
|
|
placeholder="结束时间" |
|
|
|
> |
|
|
|
<el-date-picker v-model="formData.serviceTimeEnd" :picker-options="endPickerOptions" |
|
|
|
class="item_width_2 u-data-tag" style="width: 220px" type="date" value-format="yyyy-MM-dd HH:mm:ss" |
|
|
|
value="yyyy-MM-dd" placeholder="结束时间"> |
|
|
|
</el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item |
|
|
|
label="政策依据" |
|
|
|
prop="policyId" |
|
|
|
label-width="150px" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
style="display: block" |
|
|
|
> |
|
|
|
<el-select |
|
|
|
v-model="formData.policyId" |
|
|
|
class="input-width-small" |
|
|
|
placeholder="请选择" |
|
|
|
clearable |
|
|
|
> |
|
|
|
<el-option |
|
|
|
v-for="item in policyList" |
|
|
|
:key="item.id" |
|
|
|
:label="item.title" |
|
|
|
:value="item.id" |
|
|
|
> |
|
|
|
<el-form-item label="政策依据" prop="policyId" label-width="150px" :class="{ 'form-item': source === 'visiual' }" |
|
|
|
style="display: block"> |
|
|
|
<el-select v-model="formData.policyId" class="input-width-small" placeholder="请选择" clearable> |
|
|
|
<el-option v-for="item in policyList" :key="item.id" :label="item.title" :value="item.id"> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
|
|
|
|
@ -167,56 +64,25 @@ |
|
|
|
> --> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item |
|
|
|
label="经办人" |
|
|
|
prop="principalName" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
label-width="150px" |
|
|
|
style="display: block" |
|
|
|
> |
|
|
|
<el-input |
|
|
|
class="item_width_1" |
|
|
|
placeholder="请输入联系人姓名" |
|
|
|
v-model="formData.principalName" |
|
|
|
> |
|
|
|
<el-form-item label="经办人" prop="principalName" :class="{ 'form-item': source === 'visiual' }" label-width="150px" |
|
|
|
style="display: block"> |
|
|
|
<el-input class="item_width_1" placeholder="请输入联系人姓名" v-model="formData.principalName"> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item |
|
|
|
label="联系方式" |
|
|
|
prop="principalContact" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
label-width="150px" |
|
|
|
style="display: block" |
|
|
|
> |
|
|
|
<el-input |
|
|
|
class="item_width_1" |
|
|
|
placeholder="请输入联系人电话" |
|
|
|
v-model="formData.principalContact" |
|
|
|
> |
|
|
|
<el-form-item label="联系方式" prop="principalContact" :class="{ 'form-item': source === 'visiual' }" |
|
|
|
label-width="150px" style="display: block"> |
|
|
|
<el-input class="item_width_1" placeholder="请输入联系人电话" v-model="formData.principalContact"> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item label="指派服务" label-width="150px"> |
|
|
|
<el-switch |
|
|
|
v-model="formData.assignFlag" |
|
|
|
@change="handelDisabledRules" |
|
|
|
> |
|
|
|
<el-switch v-model="formData.assignFlag" @change="handelDisabledRules"> |
|
|
|
</el-switch> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item |
|
|
|
label="查找享受服务人员" |
|
|
|
prop="resiSearchTagId" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
label-width="150px" |
|
|
|
style="display: block" |
|
|
|
v-if="formData.assignFlag" |
|
|
|
> |
|
|
|
<input |
|
|
|
type="text" |
|
|
|
v-model="formData.resiSearchTagId" |
|
|
|
v-show="false" |
|
|
|
/> |
|
|
|
<el-form-item label="查找享受服务人员" prop="resiSearchTagId" :class="{ 'form-item': source === 'visiual' }" |
|
|
|
label-width="150px" style="display: block" v-if="formData.assignFlag"> |
|
|
|
<input type="text" v-model="formData.resiSearchTagId" v-show="false" /> |
|
|
|
<template v-if="formData.resiSearchTagName"> |
|
|
|
<el-tag @close="handleCloseTag" closable style="margin-right: 10px"> |
|
|
|
{{ formData.resiSearchTagName }} |
|
|
|
@ -228,70 +94,30 @@ |
|
|
|
</el-button> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item |
|
|
|
label="服务方" |
|
|
|
prop="serviceOrgId" |
|
|
|
label-width="150px" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
style="display: block" |
|
|
|
> |
|
|
|
<el-select |
|
|
|
v-model="formData.serviceOrgType" |
|
|
|
class="input-width-small" |
|
|
|
placeholder="请选择" |
|
|
|
clearable |
|
|
|
@change="handleServiceChange('add', $event)" |
|
|
|
> |
|
|
|
<el-option |
|
|
|
v-for="item in serviceOptions" |
|
|
|
:key="item.value" |
|
|
|
:label="item.label" |
|
|
|
:value="item.value" |
|
|
|
> |
|
|
|
<el-form-item label="服务方" prop="serviceOrgId" label-width="150px" :class="{ 'form-item': source === 'visiual' }" |
|
|
|
style="display: block"> |
|
|
|
<el-select v-model="formData.serviceOrgType" class="input-width-small" placeholder="请选择" clearable |
|
|
|
@change="handleServiceChange('add', $event)"> |
|
|
|
<el-option v-for="item in serviceOptions" :key="item.value" :label="item.label" :value="item.value"> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
- |
|
|
|
<el-select |
|
|
|
v-model="formData.serviceOrgId" |
|
|
|
class="input-width-middle" |
|
|
|
filterable |
|
|
|
placeholder="请选择" |
|
|
|
clearable |
|
|
|
> |
|
|
|
<el-option |
|
|
|
v-for="item in serviceOptiondList" |
|
|
|
:key="item.id" |
|
|
|
:label="item.name" |
|
|
|
:value="item.id" |
|
|
|
> |
|
|
|
<el-select v-model="formData.serviceOrgId" class="input-width-middle" filterable placeholder="请选择" clearable> |
|
|
|
<el-option v-for="item in serviceOptiondList" :key="item.id" :label="item.name" :value="item.id"> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item |
|
|
|
label="直接反馈" |
|
|
|
prop="remark" |
|
|
|
label-width="150px" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
style="display: block" |
|
|
|
> |
|
|
|
<el-checkbox |
|
|
|
:label="'是'" |
|
|
|
v-model="showFeedback" |
|
|
|
@change="handleChangeFeedback" |
|
|
|
></el-checkbox> |
|
|
|
<el-form-item label="直接反馈" prop="remark" label-width="150px" :class="{ 'form-item': source === 'visiual' }" |
|
|
|
style="display: block"> |
|
|
|
<el-checkbox :label="'是'" v-model="showFeedback" @change="handleChangeFeedback"></el-checkbox> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
<div v-show="formType === 'feedback' || showFeedback"> |
|
|
|
<!-- <h3 class="d-h3">反馈内容</h3> --> |
|
|
|
|
|
|
|
<el-form |
|
|
|
ref="ref_form_feedback" |
|
|
|
:inline="true" |
|
|
|
:model="feedbackFormData" |
|
|
|
:rules="feedbackDataRule" |
|
|
|
class="div_form" |
|
|
|
> |
|
|
|
<el-form ref="ref_form_feedback" :inline="true" :model="feedbackFormData" :rules="feedbackDataRule" |
|
|
|
class="div_form"> |
|
|
|
<!-- <el-form-item |
|
|
|
label="服务目标" |
|
|
|
prop="serviceGoal" |
|
|
|
@ -363,43 +189,17 @@ |
|
|
|
</el-option> |
|
|
|
</el-select> --> |
|
|
|
<!-- </el-form-item> --> |
|
|
|
<el-form-item |
|
|
|
label="满意度" |
|
|
|
style="display: block" |
|
|
|
label-width="150px" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
prop="satisfaction" |
|
|
|
> |
|
|
|
<el-select |
|
|
|
class="item_width_2" |
|
|
|
v-model="feedbackFormData.satisfaction" |
|
|
|
placeholder="全部" |
|
|
|
clearable |
|
|
|
> |
|
|
|
<el-option |
|
|
|
v-for="item in satisfyArray" |
|
|
|
:key="item.value" |
|
|
|
:label="item.label" |
|
|
|
:value="item.value" |
|
|
|
> |
|
|
|
<el-form-item label="满意度" style="display: block" label-width="150px" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" prop="satisfaction"> |
|
|
|
<el-select class="item_width_2" v-model="feedbackFormData.satisfaction" placeholder="全部" clearable> |
|
|
|
<el-option v-for="item in satisfyArray" :key="item.value" :label="item.label" :value="item.value"> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item |
|
|
|
label="备注" |
|
|
|
prop="serviceGoal" |
|
|
|
:class="{ 'form-item': source === 'visiual' }" |
|
|
|
label-width="150px" |
|
|
|
style="display: block" |
|
|
|
> |
|
|
|
<el-input |
|
|
|
class="item_width_1" |
|
|
|
type="textarea" |
|
|
|
maxlength="1000" |
|
|
|
show-word-limit |
|
|
|
:rows="3" |
|
|
|
v-model="feedbackFormData.serviceGoal" |
|
|
|
></el-input> |
|
|
|
<el-form-item label="备注" prop="serviceGoal" :class="{ 'form-item': source === 'visiual' }" label-width="150px" |
|
|
|
style="display: block"> |
|
|
|
<el-input class="item_width_1" type="textarea" maxlength="1000" show-word-limit :rows="3" |
|
|
|
v-model="feedbackFormData.serviceGoal"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<!-- <el-form-item label="详细位置" label-width="150px"> |
|
|
|
<el-input |
|
|
|
@ -468,55 +268,21 @@ |
|
|
|
|
|
|
|
<div class="div_btn"> |
|
|
|
<el-button size="small" @click="handleCancle">取 消</el-button> |
|
|
|
<el-button |
|
|
|
size="small" |
|
|
|
type="primary" |
|
|
|
:disabled="btnDisable" |
|
|
|
@click="handleComfirm" |
|
|
|
>确 定</el-button |
|
|
|
> |
|
|
|
<el-button size="small" type="primary" :disabled="btnDisable" @click="handleComfirm">确 定</el-button> |
|
|
|
</div> |
|
|
|
|
|
|
|
<el-dialog |
|
|
|
v-if="showPersonList" |
|
|
|
:visible.sync="showPersonList" |
|
|
|
:append-to-body="true" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" |
|
|
|
:title="'政策预览'" |
|
|
|
width="1150px" |
|
|
|
top="5vh" |
|
|
|
class="dialog-h" |
|
|
|
@closed="showPersonList = false" |
|
|
|
> |
|
|
|
<person-list |
|
|
|
ref="ref_detail_form" |
|
|
|
:policyId="policyId" |
|
|
|
:ruleList="ruleList" |
|
|
|
@handleOk="handleOk" |
|
|
|
@handleClose="handleClose" |
|
|
|
> |
|
|
|
<el-dialog v-if="showPersonList" :visible.sync="showPersonList" :append-to-body="true" :close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" :title="'政策预览'" width="1150px" top="5vh" class="dialog-h" |
|
|
|
@closed="showPersonList = false"> |
|
|
|
<person-list ref="ref_detail_form" :policyId="policyId" :ruleList="ruleList" @handleOk="handleOk" |
|
|
|
@handleClose="handleClose"> |
|
|
|
</person-list> |
|
|
|
</el-dialog> |
|
|
|
<el-dialog |
|
|
|
v-if="showLabelForm" |
|
|
|
:visible.sync="showLabelForm" |
|
|
|
:append-to-body="true" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" |
|
|
|
:title="'标签配置'" |
|
|
|
width="900px" |
|
|
|
top="5vh" |
|
|
|
class="dialog-h" |
|
|
|
@closed="showLabelForm = false" |
|
|
|
> |
|
|
|
<label-form |
|
|
|
ref="ref_label_form" |
|
|
|
:policyId="policyId" |
|
|
|
:ruleList="ruleList" |
|
|
|
@dialogCancle="addFormCancle" |
|
|
|
@dialogOk="addFormOk" |
|
|
|
> |
|
|
|
<el-dialog v-if="showLabelForm" :visible.sync="showLabelForm" :append-to-body="true" :close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" :title="'标签配置'" width="900px" top="5vh" class="dialog-h" |
|
|
|
@closed="showLabelForm = false"> |
|
|
|
<label-form ref="ref_label_form" :policyId="policyId" :ruleList="ruleList" @dialogCancle="addFormCancle" |
|
|
|
@dialogOk="addFormOk"> |
|
|
|
<!-- @handleOk="handleOk" |
|
|
|
@handleClose="handleClose" --> |
|
|
|
</label-form> |
|
|
|
@ -1340,6 +1106,7 @@ export default { |
|
|
|
.form-item::v-deep .el-form-item__label { |
|
|
|
color: #fff; |
|
|
|
} |
|
|
|
|
|
|
|
.form-item { |
|
|
|
.el-radio { |
|
|
|
color: #fff; |
|
|
|
|