|
|
@@ -42,137 +42,135 @@ |
|
|
|
{{ scope.row.state === 'ENABLE' ? '禁用' : '启用' }} |
|
|
|
</el-button> |
|
|
|
</template> |
|
|
|
|
|
|
|
<template #dialog> |
|
|
|
<el-form label-position="right" label-width="150px" :model="addForm" :rules="rules" |
|
|
|
:ref="(el) => (dataFormRef = el)" :hide-required-asterisk="typeOption === 'view'" v-loading="formLoding"> |
|
|
|
<el-form-item v-if="!isFirstDot" label="上级网点:" prop="superServiceHallId"> |
|
|
|
<div style="width: 100%"> |
|
|
|
<el-tree-select :load="load" lazy filterable style="width: 100%" placeholder="请选择上级网点编号" |
|
|
|
v-model="addForm.superServiceHallId" :props="{ |
|
|
|
:ref="(el) => (dataFormRef = el)" :hide-required-asterisk="typeOption === 'view'" |
|
|
|
v-loading="formLoding"> |
|
|
|
<el-row> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="所属渠道:" prop="agencyId"> |
|
|
|
<el-select clearable filterable v-model="addForm.agencyId" style="width: 100%" |
|
|
|
@change="agencyIdChange" :disabled="typeOption === 'edit'" |
|
|
|
placeholder="请选择所属渠道"> |
|
|
|
<el-option v-for="item in agencyList" :key="item.value" :label="item.label" :value="item.value"/> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
|
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="渠道编号:" prop="agencyId"> |
|
|
|
<el-select clearable filterable v-model="addForm.agencyId" style="width: 100%" placeholder="请选择所属渠道" |
|
|
|
:disabled="true"> |
|
|
|
<el-option v-for="item in agencyList" :key="item.value" :label="item.value" :value="item.value"/> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
|
|
|
|
<el-col :span="12" v-if="!isFirstDot"> |
|
|
|
<el-form-item v-if="!isFirstDot" label="上级网点:" prop="superServiceHallId"> |
|
|
|
<el-tree-select :load="load" lazy filterable style="width: 100%" placeholder="请选择上级网点编号" |
|
|
|
v-model="addForm.superServiceHallId" :props="{ |
|
|
|
label: 'servicehallName', |
|
|
|
children: 'childrens', |
|
|
|
value: 'servicehallId', |
|
|
|
isLeaf: 'isLeaf', |
|
|
|
}" value-key="servicehallId" :check-strictly="true" :render-after-expand="false" |
|
|
|
node-key="servicehallId" show-checkbox /> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="网点编号:" prop="serviceHallId"> |
|
|
|
<div style="width: 100%"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="addForm.serviceHallId" placeholder="请输入网点编号" /> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="网点名称:" prop="name"> |
|
|
|
<div style="width: 100%"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="addForm.name" placeholder="请输入网点名称" /> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="中心网点编号:" prop="mapChannelId"> |
|
|
|
<div style="width: 100%"> |
|
|
|
<el-select clearable filterable v-model="addForm.mapChannelId" style="width: 100%" |
|
|
|
@change="centerServiceHallIdChange" placeholder="请选择中心网点编号"> |
|
|
|
<el-option v-for="item in centerServiceHallIdList" :key="item.centerServiceHallId" |
|
|
|
:label="item.centerServicehallName" :value="item.centerServiceHallId" /> |
|
|
|
</el-select> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="地址:" prop="address"> |
|
|
|
<div style="width: 100%"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="addForm.address" placeholder="请输入地址" /> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="联系人电话:" prop="tel"> |
|
|
|
<div style="width: 100%"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="addForm.tel" placeholder="请输入联系人电话" /> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="联系人:" prop="contact"> |
|
|
|
<div style="width: 100%"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="addForm.contact" placeholder="请输入联系人" /> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="经度:" prop="longitude"> |
|
|
|
<div style="width: 100%"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="addForm.longitude" placeholder="请输入经度" /> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="纬度:" prop="latitude"> |
|
|
|
<div style="width: 100%"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="addForm.latitude" placeholder="请输入纬度" /> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="半径距离(单位:米):" prop="radial"> |
|
|
|
<div style="width: 100%"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="addForm.radial" placeholder="请输入半径距离(单位:米)" /> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item label="所属渠道:" prop="agencyId"> |
|
|
|
<div style="width: 100%"> |
|
|
|
<el-select clearable filterable v-model="addForm.agencyId" style="width: 100%" @change="agencyIdChange" |
|
|
|
placeholder="请选择所属渠道"> |
|
|
|
<el-option v-for="item in agencyList" :key="item.value" :label="item.label" :value="item.value" /> |
|
|
|
</el-select> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="渠道编号:" prop="agencyId"> |
|
|
|
<div style="width: 100%"> |
|
|
|
<el-select clearable filterable v-model="addForm.agencyId" style="width: 100%" placeholder="请选择所属渠道" |
|
|
|
:disabled="true"> |
|
|
|
<el-option v-for="item in agencyList" :key="item.value" :label="item.value" :value="item.value" /> |
|
|
|
</el-select> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
node-key="servicehallId" show-checkbox/> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
|
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="网点编号:" prop="serviceHallId"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="addForm.serviceHallId" placeholder="请输入网点编号"/> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
|
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="网点名称:" prop="name"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="addForm.name" placeholder="请输入网点名称"/> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
|
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="中心网点编号:" prop="mapChannelId"> |
|
|
|
<el-select clearable filterable v-model="addForm.mapChannelId" style="width: 100%" |
|
|
|
@change="centerServiceHallIdChange" placeholder="请选择中心网点编号"> |
|
|
|
<el-option v-for="item in centerServiceHallIdList" :key="item.centerServiceHallId" |
|
|
|
:label="item.centerServicehallName" :value="item.centerServiceHallId"/> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
|
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="地址:" prop="address"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="addForm.address" placeholder="请输入地址"/> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
|
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="联系人电话:" prop="tel"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="addForm.tel" placeholder="请输入联系人电话"/> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
|
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="联系人:" prop="contact"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="addForm.contact" placeholder="请输入联系人"/> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
|
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="半径距离(单位:米):" prop="radial"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="addForm.radial" placeholder="请输入半径距离(单位:米)"/> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
|
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="经度:" prop="longitude"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="addForm.longitude" placeholder="请输入经度"/> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
|
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="纬度:" prop="latitude"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="addForm.latitude" placeholder="请输入纬度"/> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
|
|
|
|
</el-row> |
|
|
|
</el-form> |
|
|
|
|
|
|
|
|
|
|
|
<div style="padding: 0 0 30px 0;text-align: right;"> |
|
|
|
<el-button type="success" icon="Plus" @click="addBtn" style="margin-bottom: 10px;"> |
|
|
|
添加 |
|
|
|
</el-button> |
|
|
|
<div style="padding: 20px 50px;text-align: left;font-weight: 700;" v-if="addForm.locationModels.length > 0"> |
|
|
|
办理点信息</div> |
|
|
|
<el-form v-for="(item, index) in addForm.locationModels" :key="index" label-width="150" :rules="rules" |
|
|
|
:model="item"> |
|
|
|
<el-form-item label="名称:" prop="name"> |
|
|
|
<div style="width: 100%"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="item.name" placeholder="请输入办理点名称" /> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="地址:" prop="address"> |
|
|
|
<div style="width: 100%"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="item.address" placeholder="请输入地址" /> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="经度:" prop="longitude"> |
|
|
|
<div style="width: 100%"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="item.longitude" placeholder="请输入经度" /> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="纬度:" prop="latitude"> |
|
|
|
<div style="width: 100%"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="item.latitude" placeholder="请输入纬度" /> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="半径距离(单位:米):" prop="radial"> |
|
|
|
<div style="width: 100%"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="item.radial" placeholder="请输入半径距离(单位:米)" /> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
<el-button class="op-btn" type="danger" @click="deleteHandle(index)"> |
|
|
|
删除 |
|
|
|
</el-button> |
|
|
|
<div style="text-align: left"> |
|
|
|
<div class="as-bold">办理点信息</div> |
|
|
|
<el-button type="success" icon="Plus" @click="addBtn" style="margin-bottom: 10px;">添加办理点信息</el-button> |
|
|
|
<div style="padding: 10px 50px;text-align: left;font-weight: 700;" v-if="addForm.locationModels.length > 0"></div> |
|
|
|
|
|
|
|
<el-form style="width: 45%;display: inline-block;margin: 0 0 30px 20px" v-for="(item, index) in addForm.locationModels" :key="index" label-width="150" :rules="rules" :model="item"> |
|
|
|
<el-form-item label="名称:" prop="name"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="item.name" placeholder="请输入办理点名称"/> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="地址:" prop="address"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="item.address" placeholder="请输入地址"/> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="经度:" prop="longitude"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="item.longitude" placeholder="请输入经度"/> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="纬度:" prop="latitude"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="item.latitude" placeholder="请输入纬度"/> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="半径距离(单位:米):" prop="radial"> |
|
|
|
<el-input maxlength="60" v-trim clearable v-model="item.radial" placeholder="请输入半径距离(单位:米)"/> |
|
|
|
</el-form-item> |
|
|
|
<el-button class="op-btn" type="danger" @click="deleteHandle(index)">删除</el-button> |
|
|
|
</el-form> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
|
|
|
|
<template #footer> |
|
|
|
<el-button type="default" @click="cancel" v-if="typeOption !== 'view'"> |
|
|
|
取消 |
|
|
|
</el-button> |
|
|
|
<el-button type="primary" @click="submitHandle()" v-if="typeOption !== 'view'"> |
|
|
|
确定 |
|
|
|
</el-button> |
|
|
|
<el-button type="default" @click="cancel" v-if="typeOption !== 'view'">取消</el-button> |
|
|
|
<el-button type="primary" @click="submitHandle()" v-if="typeOption !== 'view'">确定</el-button> |
|
|
|
</template> |
|
|
|
</crud-template> |
|
|
|
|
|
|
@@ -259,9 +257,9 @@ const rules = reactive({ |
|
|
|
address: [{ required: true, message: '请输入', trigger: 'blur' }], |
|
|
|
tel: [{ required: true, message: '请输入', trigger: 'blur' }], |
|
|
|
contact: [{ required: true, message: '请输入', trigger: 'blur' }], |
|
|
|
longitude: [{ required: true, message: '请输入', trigger: 'blur' }], |
|
|
|
latitude: [{ required: true, message: '请输入', trigger: 'blur' }], |
|
|
|
radial: [{ required: true, message: '请输入', trigger: 'blur' }], |
|
|
|
longitude: [{ required: false, message: '请输入', trigger: 'blur' }], |
|
|
|
latitude: [{ required: false, message: '请输入', trigger: 'blur' }], |
|
|
|
radial: [{ required: false, message: '请输入', trigger: 'blur' }], |
|
|
|
agencyId: [{ required: true, message: '请选择', trigger: 'blur' }], |
|
|
|
mapChannelId: [{ required: true, message: '请输入', trigger: 'blur' }], |
|
|
|
}) |
|
|
@@ -493,7 +491,7 @@ let field = ref({ |
|
|
|
border: true, //是否添加边框(默认false) |
|
|
|
dialogCustom: true, //自定义Dialog (默认false) |
|
|
|
dialogFooter: true, //隐藏弹窗页脚显示 (默认false) |
|
|
|
dialogWidth: '40%', //dialog宽度 (默认40%) |
|
|
|
dialogWidth: '60%', //dialog宽度 (默认40%) |
|
|
|
crudShow: true, //是否显示CURD操作栏 (默认true) |
|
|
|
crudChildShow: true, //是否显示CURD子操作栏 (默认true) |
|
|
|
paginStart: true, //是否显示分页查询 (默认false) |
|
|
@@ -924,4 +922,13 @@ function cancel() { |
|
|
|
parentSelectList.value = [] |
|
|
|
} |
|
|
|
</script> |
|
|
|
<style lang="scss" scoped></style> |
|
|
|
<style lang="scss" scoped> |
|
|
|
.as-bold{ |
|
|
|
text-align: center; |
|
|
|
font-weight: bold; |
|
|
|
line-height: 25px; |
|
|
|
border-bottom: 1px solid rgb(153, 153, 153); |
|
|
|
border-top: 1px solid rgb(153, 153, 153); |
|
|
|
margin-bottom: 10px; |
|
|
|
} |
|
|
|
</style> |