fix:修改信息内容

This commit is contained in:
ll 2023-05-06 08:36:46 +08:00
parent e6b4407783
commit d910c5bc33
7 changed files with 140 additions and 125 deletions

View File

@ -11,26 +11,26 @@
<el-col :span="24"> <el-col :span="24">
<el-form-item <el-form-item
:label-width="labelWidth" :label-width="labelWidth"
label="资讯留言人" label="咨询留言人"
prop="consulting_hotline_user" prop="consulting_hotline_user"
> >
<el-input <el-input
v-model="formData.consulting_hotline_user" v-model="formData.consulting_hotline_user"
type="text" type="text"
placeholder="请输入资讯留言人" placeholder="请输入咨询留言人"
></el-input> ></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item <el-form-item
:label-width="labelWidth" :label-width="labelWidth"
label="资讯热线方式" label="咨询热线方式"
prop="consulting_hotline_phone" prop="consulting_hotline_phone"
> >
<el-input <el-input
v-model="formData.consulting_hotline_phone" v-model="formData.consulting_hotline_phone"
type="text" type="text"
placeholder="请输入资讯热线方式" placeholder="请输入咨询热线方式"
></el-input> ></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -86,13 +86,13 @@ const rules = reactive({
consulting_hotline_user: [ consulting_hotline_user: [
{ {
required: true, required: true,
message: '资讯留言人不能为空' message: '咨询留言人不能为空'
} }
], ],
consulting_hotline_phone: [ consulting_hotline_phone: [
{ {
required: true, required: true,
message: '资讯热线方式不能为空' message: '咨询热线方式不能为空'
} }
] ]
}); });

View File

@ -11,26 +11,26 @@
<el-col :span="24"> <el-col :span="24">
<el-form-item <el-form-item
:label-width="labelWidth" :label-width="labelWidth"
label="资讯留言人" label="咨询留言人"
prop="consulting_hotline_user" prop="consulting_hotline_user"
> >
<el-input <el-input
v-model="formData.consulting_hotline_user" v-model="formData.consulting_hotline_user"
type="text" type="text"
placeholder="请输入资讯留言人" placeholder="请输入咨询留言人"
></el-input> ></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item <el-form-item
:label-width="labelWidth" :label-width="labelWidth"
label="资讯热线方式" label="咨询热线方式"
prop="consulting_hotline_phone" prop="consulting_hotline_phone"
> >
<el-input <el-input
v-model="formData.consulting_hotline_phone" v-model="formData.consulting_hotline_phone"
type="text" type="text"
placeholder="请输入资讯热线方式" placeholder="请输入咨询热线方式"
></el-input> ></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>

View File

@ -11,26 +11,26 @@
<el-col :span="24"> <el-col :span="24">
<el-form-item <el-form-item
:label-width="labelWidth" :label-width="labelWidth"
label="资讯留言人" label="咨询留言人"
prop="consulting_hotline_user" prop="consulting_hotline_user"
> >
<el-input <el-input
v-model="formData.consulting_hotline_user" v-model="formData.consulting_hotline_user"
type="text" type="text"
placeholder="请输入资讯留言人" placeholder="请输入咨询留言人"
></el-input> ></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item <el-form-item
:label-width="labelWidth" :label-width="labelWidth"
label="资讯热线方式" label="咨询热线方式"
prop="consulting_hotline_phone" prop="consulting_hotline_phone"
> >
<el-input <el-input
v-model="formData.consulting_hotline_phone" v-model="formData.consulting_hotline_phone"
type="text" type="text"
placeholder="请输入资讯热线方式" placeholder="请输入咨询热线方式"
></el-input> ></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -94,13 +94,13 @@ const rules = reactive({
consulting_hotline_user: [ consulting_hotline_user: [
{ {
required: true, required: true,
message: '资讯留言人不能为空' message: '咨询留言人不能为空'
} }
], ],
consulting_hotline_phone: [ consulting_hotline_phone: [
{ {
required: true, required: true,
message: '资讯热线方式不能为空' message: '咨询热线方式不能为空'
} }
] ]
}); });

View File

@ -1,33 +1,42 @@
<template> <template>
<!-- 面包屑 --> <!-- 面包屑 -->
<el-breadcrumb> <el-breadcrumb>
<el-breadcrumb-item>咨询热线管理</el-breadcrumb-item> <el-breadcrumb-item>联系方式</el-breadcrumb-item>
<el-breadcrumb-item to="/consulting_hotline/list">咨询热线列表</el-breadcrumb-item> <el-breadcrumb-item to="/consulting_hotline/list"
>咨询热线列表</el-breadcrumb-item
>
</el-breadcrumb> </el-breadcrumb>
<!-- 搜索 --> <!-- 搜索 -->
<el-form inline :model="params"> <el-form inline :model="params">
<el-form-item label="咨询留言人">
<el-input
<el-form-item label="资讯留言人"> v-model="params.consulting_hotline_user"
<el-input v-model='params.consulting_hotline_user' placeholder='请输入资讯留言人'></el-input> placeholder="请输入咨询留言人"
</el-form-item> ></el-input>
<el-form-item label="资讯热线方式"> </el-form-item>
<el-input v-model='params.consulting_hotline_phone' placeholder='请输入资讯热线方式'></el-input> <el-form-item label="咨询热线方式">
</el-form-item> <el-input
v-model="params.consulting_hotline_phone"
placeholder="请输入咨询热线方式"
></el-input>
</el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" @click="tableRef.reload()" icon="ElIconSearch"> <el-button type="primary" @click="tableRef.reload()" icon="ElIconSearch">
搜索 搜索
</el-button> </el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-space style="margin-bottom: 10px;"> <el-space style="margin-bottom: 10px">
<!-- 添加咨询热线 --> <!-- 添加咨询热线 -->
<el-col :span="1"> <el-col :span="1">
<el-button type="primary" @click="addConsultingHotlineDialogVisible = true"> 添加 </el-button> <el-button
type="primary"
@click="addConsultingHotlineDialogVisible = true"
>
添加
</el-button>
</el-col> </el-col>
<!-- 下拉操作 --> <!-- 下拉操作 -->
<el-dropdown v-if="selectionData.length"> <el-dropdown v-if="selectionData.length">
<el-button type="primary"> <el-button type="primary">
@ -51,8 +60,6 @@
:params="params" :params="params"
:request="params => getConsultingHotlineList(params)" :request="params => getConsultingHotlineList(params)"
> >
<template #chaoz="scope"> <template #chaoz="scope">
<el-space> <el-space>
<el-button size="small" @click="handleUpdate(scope.row)"> <el-button size="small" @click="handleUpdate(scope.row)">
@ -64,7 +71,7 @@
</el-button> </el-button>
<template #dropdown> <template #dropdown>
<el-dropdown-menu> <el-dropdown-menu>
<el-dropdown-item :command="{ type: 'detail', row: scope.row}"> <el-dropdown-item :command="{ type: 'detail', row: scope.row }">
详情 详情
</el-dropdown-item> </el-dropdown-item>
<el-dropdown-item :command="{ type: 'delete', row: scope.row }"> <el-dropdown-item :command="{ type: 'delete', row: scope.row }">
@ -78,18 +85,30 @@
</DataTable> </DataTable>
<!-- 添加咨询热线 --> <!-- 添加咨询热线 -->
<AddConsultingHotlineDialog v-model="addConsultingHotlineDialogVisible" :done="() => tableRef.reload()"></AddConsultingHotlineDialog> <AddConsultingHotlineDialog
v-model="addConsultingHotlineDialogVisible"
:done="() => tableRef.reload()"
></AddConsultingHotlineDialog>
<!-- 编辑咨询热线 --> <!-- 编辑咨询热线 -->
<EditConsultingHotlineDialog <EditConsultingHotlineDialog
v-model="EditConsultingHotlineDialogVisible" :data="EditConsultingHotlineDialogRow" :done="() => tableRef.reload()"></EditConsultingHotlineDialog> v-model="EditConsultingHotlineDialogVisible"
<!-- 咨询热线详情 --> :data="EditConsultingHotlineDialogRow"
<DetailConsultingHotlineDialog v-model="DetailConsultingHotlineDialogVisible" :data="DetailConsultingHotlineDialogRow"></DetailConsultingHotlineDialog> :done="() => tableRef.reload()"
></EditConsultingHotlineDialog>
<!-- 咨询热线详情 -->
<DetailConsultingHotlineDialog
v-model="DetailConsultingHotlineDialogVisible"
:data="DetailConsultingHotlineDialogRow"
></DetailConsultingHotlineDialog>
</template> </template>
<script setup> <script setup>
import { ArrowDown } from '@element-plus/icons-vue'; import { ArrowDown } from '@element-plus/icons-vue';
import { ref, reactive,watch } from 'vue'; import { ref, reactive, watch } from 'vue';
import { useLoginStore } from "~/store"; import { useLoginStore } from '~/store';
import { getConsultingHotlineList, deleteConsultingHotline } from '~/service/consulting_hotline'; import {
getConsultingHotlineList,
deleteConsultingHotline
} from '~/service/consulting_hotline';
import AddConsultingHotlineDialog from './components/AddConsultingHotlineDialog.vue'; import AddConsultingHotlineDialog from './components/AddConsultingHotlineDialog.vue';
import EditConsultingHotlineDialog from './components/EditConsultingHotlineDialog.vue'; import EditConsultingHotlineDialog from './components/EditConsultingHotlineDialog.vue';
import DetailConsultingHotlineDialog from './components/DetailConsultingHotlineDialog.vue'; import DetailConsultingHotlineDialog from './components/DetailConsultingHotlineDialog.vue';
@ -105,44 +124,41 @@ const DetailConsultingHotlineDialogVisible = ref(false);
const DetailConsultingHotlineDialogRow = ref({}); const DetailConsultingHotlineDialogRow = ref({});
const headers = { const headers = {
Accept: "application/json", Accept: 'application/json',
...store.headers, ...store.headers
}; };
// //
const params = reactive({ const params = reactive({
consulting_hotline_user: "", consulting_hotline_user: '',
consulting_hotline_phone: "", consulting_hotline_phone: ''
}); });
const column = [ const column = [
{
{ fixed: true,
fixed: true, type: 'selection'
type: 'selection' },
}, {
{ prop: 'consulting_hotline_user',
prop: "consulting_hotline_user", label: '咨询留言人',
label: '资讯留言人', width: '150'
width: '150' },
}, {
{ prop: 'consulting_hotline_phone',
prop: "consulting_hotline_phone", label: '咨询热线方式',
label: '资讯热线方式', width: '200'
width: '150' },
}, {
{ label: '操作',
label: '操作', prop: 'chaoz',
prop: 'chaoz', width: '250',
width: '250', fixed: 'right'
fixed: 'right' }
}
]; ];
const handleCommand = ({ type, row }) => { const handleCommand = ({ type, row }) => {
switch (type) { switch (type) {
case "detail": case 'detail':
handleDetail(row); handleDetail(row);
break; break;
case 'delete': case 'delete':
@ -165,17 +181,13 @@ const handleDelete = data => {
// //
function handleUpdate(row) { function handleUpdate(row) {
EditConsultingHotlineDialogVisible.value = true EditConsultingHotlineDialogVisible.value = true;
EditConsultingHotlineDialogRow.value = row EditConsultingHotlineDialogRow.value = row;
} }
// //
function handleDetail(row) { function handleDetail(row) {
DetailConsultingHotlineDialogVisible.value = true DetailConsultingHotlineDialogVisible.value = true;
DetailConsultingHotlineDialogRow.value = row DetailConsultingHotlineDialogRow.value = row;
} }
</script> </script>

View File

@ -2,7 +2,7 @@
<!-- 面包屑 --> <!-- 面包屑 -->
<el-breadcrumb> <el-breadcrumb>
<el-breadcrumb-item>联系方式</el-breadcrumb-item> <el-breadcrumb-item>联系方式</el-breadcrumb-item>
<el-breadcrumb-item to="/ContactInfo'">联系方式</el-breadcrumb-item> <el-breadcrumb-item to="/ContactInfo'">联系信息</el-breadcrumb-item>
</el-breadcrumb> </el-breadcrumb>
<el-form ref="formRef" :model="formData" :rules="rules"> <el-form ref="formRef" :model="formData" :rules="rules">
<el-row> <el-row>

View File

@ -1,23 +1,38 @@
<template> <template>
<el-dialog v-model="dialogVisible" title="添加联系扫码" width="900px" @closed="closeDialog" @open="openDialog"> <el-dialog
v-model="dialogVisible"
title="添加联系扫码"
width="900px"
@closed="closeDialog"
@open="openDialog"
>
<el-form ref="formRef" :model="formData" :rules="rules"> <el-form ref="formRef" :model="formData" :rules="rules">
<el-row> <el-row>
<el-col :span="12">
<el-form-item
<el-col :span='12'> :label-width="labelWidth"
<el-form-item :label-width='labelWidth' label='联系扫码图片' prop='contact_scancode_img'> label="联系扫码图片"
<UploadImage ref='uploadRef' v-model='formData.contact_scancode_img' :data=uoloadData :limit='1' :fileSize='5' prop="contact_scancode_img"
:drag='true' :isShowTip='false' /> >
</el-form-item> <UploadImage
</el-col> ref="uploadRef"
v-model="formData.contact_scancode_img"
:data="uoloadData"
:limit="1"
:fileSize="5"
:drag="true"
:isShowTip="false"
/>
</el-form-item>
</el-col>
</el-row> </el-row>
</el-form> </el-form>
<template #footer> <template #footer>
<span class="dialog-footer"> <span class="dialog-footer">
<el-button type="primary" @click="handleAddClick(formRef)">添加</el-button> <el-button type="primary" @click="handleAddClick(formRef)"
>添加</el-button
>
<el-button @click="handleResetClick(formRef)">重置</el-button> <el-button @click="handleResetClick(formRef)">重置</el-button>
</span> </span>
</template> </template>
@ -25,73 +40,63 @@
</template> </template>
<script setup> <script setup>
import { reactive, ref, watch } from "vue"; import { reactive, ref, watch } from 'vue';
import { addContactScancode } from "~/service/contact_scancode"; import { addContactScancode } from '~/service/contact_scancode';
import { useLoginStore } from "~/store"; import { useLoginStore } from '~/store';
// -- // --
// -- // --
// -- // --
const store = useLoginStore(); const store = useLoginStore();
const headers = { const headers = {
Accept: "application/json", Accept: 'application/json',
...store.headers, ...store.headers
}; };
const formRef = ref(); const formRef = ref();
const labelWidth = 90; const labelWidth = 90;
const props = defineProps({ const props = defineProps({
modelValue: Boolean, modelValue: Boolean,
done: Function, done: Function
}); });
const emits = defineEmits(["update:modelValue"]); const emits = defineEmits(['update:modelValue']);
const dialogVisible = ref(props.modelValue); const dialogVisible = ref(props.modelValue);
const formData = reactive({}); const formData = reactive({});
const uoloadData = ref({ const uoloadData = ref({
dirName: "ContactScancode" dirName: 'ContactScancode'
}) });
watch(props, (v) => { watch(props, v => {
dialogVisible.value = v.modelValue; dialogVisible.value = v.modelValue;
}); });
const rules = reactive({ const rules = reactive({
contact_scancode_img: [ contact_scancode_img: [
{ {
required: true, required: true,
message: '联系扫码图片不能为空' message: '联系扫码图片不能为空'
} }
], ]
}); });
// -- // --
// //
const openDialog = () => { const openDialog = () => {};
};
const closeDialog = () => { const closeDialog = () => {
handleResetClick(formRef.value); handleResetClick(formRef.value);
dialogVisible.value = false; dialogVisible.value = false;
emits("update:modelValue", false); emits('update:modelValue', false);
}; };
const handleAddClick = async (formEl) => { const handleAddClick = async formEl => {
console.log(formData); console.log(formData);
if (!formEl) return; if (!formEl) return;
formEl.validate(async (valid) => { formEl.validate(async valid => {
if (!valid) { if (!valid) {
return; return;
} }
@ -104,12 +109,10 @@ const handleAddClick = async (formEl) => {
}); });
}; };
const handleResetClick = async (formEl) => { const handleResetClick = async formEl => {
if (!formEl) return; if (!formEl) return;
formEl.resetFields(); formEl.resetFields();
}; };
</script> </script>
<style lang="less" scoped> <style lang="less" scoped></style>
</style>

View File

@ -1,7 +1,7 @@
<template> <template>
<!-- 面包屑 --> <!-- 面包屑 -->
<el-breadcrumb> <el-breadcrumb>
<el-breadcrumb-item>联系扫码管理</el-breadcrumb-item> <el-breadcrumb-item>联系方式</el-breadcrumb-item>
<el-breadcrumb-item to="/contact_scancode/list">联系扫码列表</el-breadcrumb-item> <el-breadcrumb-item to="/contact_scancode/list">联系扫码列表</el-breadcrumb-item>
</el-breadcrumb> </el-breadcrumb>