提交对接代码
This commit is contained in:
parent
512032ba95
commit
06a9d74848
22
src/api/common.js
Normal file
22
src/api/common.js
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 上传文件 单个
|
||||||
|
export function uploadFile(data) {
|
||||||
|
return request({
|
||||||
|
url: '/common/upload',
|
||||||
|
method: 'post',
|
||||||
|
data: data,
|
||||||
|
headers: {
|
||||||
|
'Content-Type': 'multipart/form-data'
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 公用下载文件接口
|
||||||
|
export function downFile(fileUrl) {
|
||||||
|
return request({
|
||||||
|
url: '/common/download/resource?resource=' + fileUrl,
|
||||||
|
method: 'get',
|
||||||
|
responseType: 'blob'
|
||||||
|
})
|
||||||
|
}
|
44
src/api/system/businessArea.js
Normal file
44
src/api/system/businessArea.js
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 获取商圈列表
|
||||||
|
export function busTradingAreaPage(query) {
|
||||||
|
return request({
|
||||||
|
url: '/admin/busTradingArea/getBusTradingAreaPage',
|
||||||
|
method: 'post',
|
||||||
|
data: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增商圈
|
||||||
|
export function addBusTradingArea(data) {
|
||||||
|
return request({
|
||||||
|
url: '/admin/busTradingArea/addBusTradingArea',
|
||||||
|
method: 'post',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改商圈
|
||||||
|
export function updateBusTradingArea(data) {
|
||||||
|
return request({
|
||||||
|
url: '/admin/busTradingArea/updateBusTradingArea',
|
||||||
|
method: 'post',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取商圈详情
|
||||||
|
export function getBusTradingArea(areaId) {
|
||||||
|
return request({
|
||||||
|
url: '/admin/busTradingArea/getBusTradingArea/' + areaId,
|
||||||
|
method: 'post'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除商圈
|
||||||
|
export function deleteBusTradingArea(areaId) {
|
||||||
|
return request({
|
||||||
|
url: '/admin/busTradingArea/deleteBusTradingArea/' + areaId,
|
||||||
|
method: 'post'
|
||||||
|
})
|
||||||
|
}
|
44
src/api/system/mediaType.js
Normal file
44
src/api/system/mediaType.js
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 获取媒体类型树列表
|
||||||
|
export function sysMediaTypeTreeList(query) {
|
||||||
|
return request({
|
||||||
|
url: '/admin/sysMediaType/treeList',
|
||||||
|
method: 'post',
|
||||||
|
data: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增媒体类型
|
||||||
|
export function addSysMediaType(data) {
|
||||||
|
return request({
|
||||||
|
url: '/admin/sysMediaType/addSysMediaType',
|
||||||
|
method: 'post',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改媒体类型
|
||||||
|
export function updateSysMediaType(data) {
|
||||||
|
return request({
|
||||||
|
url: '/admin/sysMediaType/updateSysMediaType',
|
||||||
|
method: 'post',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取媒体类型详情
|
||||||
|
export function getSysMediaType(sysMediaTypeId) {
|
||||||
|
return request({
|
||||||
|
url: '/admin/sysMediaType/getSysMediaType/' + sysMediaTypeId,
|
||||||
|
method: 'post'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除媒体类型
|
||||||
|
export function deleteSysMediaType(sysMediaTypeId) {
|
||||||
|
return request({
|
||||||
|
url: '/admin/sysMediaType/deleteSysMediaType/' + sysMediaTypeId,
|
||||||
|
method: 'post'
|
||||||
|
})
|
||||||
|
}
|
44
src/api/system/pptTemplate.js
Normal file
44
src/api/system/pptTemplate.js
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 获取PPT模板列表
|
||||||
|
export function pptTemplatePage(query) {
|
||||||
|
return request({
|
||||||
|
url: '/admin/pptTemplate/getPptTemplatePage',
|
||||||
|
method: 'post',
|
||||||
|
data: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增PPT模板
|
||||||
|
export function addPptTemplate(data) {
|
||||||
|
return request({
|
||||||
|
url: '/admin/pptTemplate/addPptTemplate',
|
||||||
|
method: 'post',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改PPT模板
|
||||||
|
export function updatePptTemplate(data) {
|
||||||
|
return request({
|
||||||
|
url: '/admin/pptTemplate/updatePptTemplate',
|
||||||
|
method: 'post',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取PPT模板详情
|
||||||
|
export function getPptTemplate(pptTemplateId) {
|
||||||
|
return request({
|
||||||
|
url: '/admin/pptTemplate/getPptTemplate/' + pptTemplateId,
|
||||||
|
method: 'post'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除PPT模板
|
||||||
|
export function deletePptTemplate(pptTemplateId) {
|
||||||
|
return request({
|
||||||
|
url: '/admin/pptTemplate/deletePptTemplate/' + pptTemplateId,
|
||||||
|
method: 'post'
|
||||||
|
})
|
||||||
|
}
|
|
@ -20,11 +20,11 @@
|
||||||
<el-table-column prop="name" label="区域名称"></el-table-column>
|
<el-table-column prop="name" label="区域名称"></el-table-column>
|
||||||
<el-table-column prop="code" label="区域编号"></el-table-column>
|
<el-table-column prop="code" label="区域编号"></el-table-column>
|
||||||
<el-table-column prop="sortNo" label="排序"></el-table-column>
|
<el-table-column prop="sortNo" label="排序"></el-table-column>
|
||||||
<el-table-column label="创建时间" align="center" prop="createTime">
|
<!-- <el-table-column label="创建时间" align="center" prop="createTime" min-width="210">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ parseTime(scope.row.createTime) }}</span>
|
<span>{{ parseTime(scope.row.createTime) }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column> -->
|
||||||
<el-table-column label="操作" align="center" width="230" class-name="small-padding fixed-width">
|
<el-table-column label="操作" align="center" width="230" class-name="small-padding fixed-width">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-button link type="primary" @click="handleUpdate(scope.row)"
|
<el-button link type="primary" @click="handleUpdate(scope.row)"
|
||||||
|
@ -76,8 +76,6 @@ const regionTreeList = ref([])
|
||||||
const open = ref(false)
|
const open = ref(false)
|
||||||
const loading = ref(true)
|
const loading = ref(true)
|
||||||
const title = ref("")
|
const title = ref("")
|
||||||
// 上级行政区划集合
|
|
||||||
const deptOptions = ref([])
|
|
||||||
const isExpandAll = ref(true)
|
const isExpandAll = ref(true)
|
||||||
const refreshTable = ref(true)
|
const refreshTable = ref(true)
|
||||||
|
|
||||||
|
@ -102,7 +100,7 @@ const getsysRegionTreeList = () => {
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 展开/折叠操作 */
|
/** 展开/折叠操作 */
|
||||||
function toggleExpandAll() {
|
const toggleExpandAll = () => {
|
||||||
refreshTable.value = false
|
refreshTable.value = false
|
||||||
isExpandAll.value = !isExpandAll.value
|
isExpandAll.value = !isExpandAll.value
|
||||||
nextTick(() => {
|
nextTick(() => {
|
||||||
|
@ -131,10 +129,8 @@ const handleAddRootNode = () => {
|
||||||
}
|
}
|
||||||
/** 新增子节点 */
|
/** 新增子节点 */
|
||||||
const handleAddChildrenNode = (row) => {
|
const handleAddChildrenNode = (row) => {
|
||||||
console.log(row)
|
|
||||||
reset()
|
reset()
|
||||||
if (row) {
|
if (row) {
|
||||||
console.log('进入了这里?')
|
|
||||||
form.value.parentId = row.id
|
form.value.parentId = row.id
|
||||||
}
|
}
|
||||||
open.value = true
|
open.value = true
|
||||||
|
|
|
@ -1,35 +1,25 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<div class="searchPanel">
|
<div class="searchPanel">
|
||||||
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" class="searchPanelForm">
|
<el-form :inline="true" v-show="showSearch" class="searchPanelForm">
|
||||||
<el-form-item label="城市:">
|
<el-form-item label="城市:">
|
||||||
<el-select v-model="queryParams.status" placeholder="请选择" clearable style="min-width: 30px">
|
<el-select v-model="queryParams.provinceId" placeholder="请选择" clearable style="min-width: 30px">
|
||||||
<el-option v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.label"
|
<el-option v-for="item in province" :key="item.value" :label="item.label" :value="item.value" />
|
||||||
:value="dict.value" />
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="">
|
<el-form-item label="">
|
||||||
<el-select v-model="queryParams.status" placeholder="请选择" clearable style="min-width: 30px">
|
<el-select v-model="queryParams.cityId" placeholder="请选择" clearable style="min-width: 30px">
|
||||||
<el-option v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.label"
|
<el-option v-for="item in city" :key="item.value" :label="item.label" :value="item.value" />
|
||||||
:value="dict.value" />
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="">
|
<el-form-item label="">
|
||||||
<el-select v-model="queryParams.status" placeholder="请选择" clearable style="min-width: 30px">
|
<el-select v-model="queryParams.countyId" placeholder="请选择" clearable style="min-width: 30px">
|
||||||
<el-option v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.label"
|
<el-option v-for="item in county" :key="item.value" :label="item.label" :value="item.value" />
|
||||||
:value="dict.value" />
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="">
|
<el-form-item label="">
|
||||||
<el-select v-model="queryParams.status" placeholder="请选择" clearable style="min-width: 30px">
|
<el-select v-model="queryParams.townId" placeholder="请选择" clearable style="min-width: 30px">
|
||||||
<el-option v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.label"
|
<el-option v-for="item in town" :key="item.value" :label="item.label" :value="item.value" />
|
||||||
:value="dict.value" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="商圈:">
|
|
||||||
<el-select v-model="queryParams.status" placeholder="请选择" clearable style="min-width: 30px">
|
|
||||||
<el-option v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.label"
|
|
||||||
:value="dict.value" />
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
|
@ -43,7 +33,15 @@
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<el-row :gutter="10" class="my_row">
|
<el-row :gutter="10" class="my_row">
|
||||||
<el-col :span="24">
|
<el-col :span="12">
|
||||||
|
<el-form :inline="true" class="searchInputForm">
|
||||||
|
<el-form-item label="">
|
||||||
|
<el-input v-model="queryParams.name" placeholder="请输入商圈名称" :prefix-icon="Search"
|
||||||
|
style="width: 300px;" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="12" style="text-align: right;">
|
||||||
<el-button type="primary" class="primaryBtn" @click="handleQuery">查询</el-button>
|
<el-button type="primary" class="primaryBtn" @click="handleQuery">查询</el-button>
|
||||||
<el-button type="primary" class="primaryBtn" @click="resetQuery">重置</el-button>
|
<el-button type="primary" class="primaryBtn" @click="resetQuery">重置</el-button>
|
||||||
<el-button type="primary" class="primaryBtn" @click="handleAdd"
|
<el-button type="primary" class="primaryBtn" @click="handleAdd"
|
||||||
|
@ -72,41 +70,37 @@
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<pagination :total="total" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize"
|
<pagination :total="total" v-model:page="queryParams.pageIndex" v-model:limit="queryParams.pageSize"
|
||||||
@pagination="getList" />
|
@pagination="getbusinessAreaList" />
|
||||||
|
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<!-- 添加或修改岗位对话框 -->
|
<!-- 添加或修改岗位对话框 -->
|
||||||
<el-dialog :title="title" v-model="open" width="800px" class="my_dialog" align-center :destroy-on-close="true"
|
<el-dialog :title="title" v-model="open" width="800px" class="my_dialog" align-center :destroy-on-close="true"
|
||||||
:close-on-click-modal="false">
|
:close-on-click-modal="false">
|
||||||
<el-form ref="postRef" :model="form" :rules="rules" label-width="120px" class="myInsertForm">
|
<el-form ref="businessAreaRef" :model="form" :rules="rules" label-width="120px" class="myInsertForm">
|
||||||
<el-form-item label="省/直辖市" prop="postName">
|
<el-form-item label="省/直辖市" prop="provinceId">
|
||||||
<el-select v-model="queryParams.status" placeholder="请选择" clearable>
|
<el-select v-model="form.provinceId" placeholder="请选择" clearable>
|
||||||
<el-option v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.label"
|
<el-option v-for="item in province" :key="item.value" :label="item.label" :value="item.value" />
|
||||||
:value="dict.value" />
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="地级市/区" prop="postCode">
|
<el-form-item label="地级市/区" prop="cityId">
|
||||||
<el-select v-model="queryParams.status" placeholder="请选择" clearable>
|
<el-select v-model="form.cityId" placeholder="请选择" clearable>
|
||||||
<el-option v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.label"
|
<el-option v-for="item in city" :key="item.value" :label="item.label" :value="item.value" />
|
||||||
:value="dict.value" />
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="区/县" prop="postSort">
|
<el-form-item label="区/县" prop="countyId">
|
||||||
<el-select v-model="queryParams.status" placeholder="请选择" clearable>
|
<el-select v-model="form.countyId" placeholder="请选择" clearable>
|
||||||
<el-option v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.label"
|
<el-option v-for="item in county" :key="item.value" :label="item.label" :value="item.value" />
|
||||||
:value="dict.value" />
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="镇" prop="status">
|
<el-form-item label="镇" prop="townId">
|
||||||
<el-select v-model="queryParams.status" placeholder="请选择" clearable>
|
<el-select v-model="form.townId" placeholder="请选择" clearable>
|
||||||
<el-option v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.label"
|
<el-option v-for="item in town" :key="item.value" :label="item.label" :value="item.value" />
|
||||||
:value="dict.value" />
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="商圈" prop="remark">
|
<el-form-item label="商圈" prop="name">
|
||||||
<el-input v-model="form.postCode" placeholder="请输入" />
|
<el-input v-model="form.name" placeholder="请输入" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
|
@ -121,61 +115,90 @@
|
||||||
|
|
||||||
<script setup name="Post">
|
<script setup name="Post">
|
||||||
import { onMounted, ref } from 'vue';
|
import { onMounted, ref } from 'vue';
|
||||||
import { listPost, addPost, delPost, getPost, updatePost } from "@/api/system/post"
|
import { Search } from '@element-plus/icons-vue'
|
||||||
|
import { busTradingAreaPage, addBusTradingArea, updateBusTradingArea, getBusTradingArea, deleteBusTradingArea } from "@/api/system/businessArea"
|
||||||
import { useBackgroundStore } from '@/store/modules/background'
|
import { useBackgroundStore } from '@/store/modules/background'
|
||||||
import otherbg from '@/assets/images/otherbg.png'
|
import otherbg from '@/assets/images/otherbg.png'
|
||||||
const bgStore = useBackgroundStore()
|
const bgStore = useBackgroundStore()
|
||||||
|
|
||||||
const { proxy } = getCurrentInstance()
|
const { proxy } = getCurrentInstance()
|
||||||
const { sys_normal_disable } = proxy.useDict("sys_normal_disable")
|
|
||||||
|
|
||||||
|
// 列表数据
|
||||||
|
const businessAreaList = ref([])
|
||||||
const showSearch = ref(true)
|
const showSearch = ref(true)
|
||||||
const loading = ref(true)
|
const loading = ref(true)
|
||||||
const businessAreaList = ref([])
|
|
||||||
const total = ref(0)
|
const total = ref(0)
|
||||||
const open = ref(false)
|
const open = ref(false)
|
||||||
const title = ref("")
|
const title = ref("")
|
||||||
|
|
||||||
|
const province = ref([])
|
||||||
|
const city = ref([])
|
||||||
|
const county = ref([])
|
||||||
|
const town = ref([])
|
||||||
const data = reactive({
|
const data = reactive({
|
||||||
form: {},
|
form: {},
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageIndex: 1,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
postCode: undefined,
|
provinceId: undefined,
|
||||||
postName: undefined,
|
cityId: undefined,
|
||||||
status: undefined
|
countyId: undefined,
|
||||||
|
townId: undefined,
|
||||||
|
name: undefined
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
postName: [{ required: true, message: "岗位名称不能为空", trigger: "blur" }],
|
// provinceId: [{ required: true, message: "省/直辖市不能为空", trigger: "change" }],
|
||||||
postCode: [{ required: true, message: "岗位编码不能为空", trigger: "blur" }],
|
// cityId: [{ required: true, message: "地级市/区不能为空", trigger: "change" }],
|
||||||
postSort: [{ required: true, message: "岗位顺序不能为空", trigger: "blur" }],
|
// countyId: [{ required: true, message: "区/县不能为空", trigger: "change" }],
|
||||||
|
// townId: [{ required: true, message: "镇不能为空", trigger: "change" }],
|
||||||
|
name: [{ required: true, message: "商圈名称不能为空", trigger: "blur" }],
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
const { queryParams, form, rules } = toRefs(data)
|
const { queryParams, form, rules } = toRefs(data)
|
||||||
|
|
||||||
|
|
||||||
|
/** 查询PPT模板列表 */
|
||||||
|
const getbusinessAreaList = () => {
|
||||||
|
loading.value = true
|
||||||
|
busTradingAreaPage(queryParams.value).then(res => {
|
||||||
|
if (res.code == 200) {
|
||||||
|
businessAreaList.value = res.list
|
||||||
|
total.value = res.total
|
||||||
|
loading.value = false
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
/** 表单重置 */
|
/** 表单重置 */
|
||||||
const reset = () => {
|
const reset = () => {
|
||||||
form.value = {
|
form.value = {
|
||||||
postId: undefined,
|
provinceId: undefined,
|
||||||
postCode: undefined,
|
cityId: undefined,
|
||||||
postName: undefined,
|
countyId: undefined,
|
||||||
postSort: 0,
|
townId: undefined,
|
||||||
status: "0",
|
name: undefined
|
||||||
remark: undefined
|
|
||||||
}
|
}
|
||||||
proxy.resetForm("postRef")
|
proxy.resetForm("businessAreaRef")
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 搜索按钮操作 */
|
/** 搜索按钮操作 */
|
||||||
const handleQuery = () => {
|
const handleQuery = () => {
|
||||||
queryParams.value.pageNum = 1
|
queryParams.value.pageIndex = 1
|
||||||
getList()
|
getbusinessAreaList()
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 重置按钮操作 */
|
/** 重置按钮操作 */
|
||||||
function resetQuery() {
|
const resetQuery = () => {
|
||||||
proxy.resetForm("queryRef")
|
queryParams.value = {
|
||||||
|
pageIndex: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
provinceId: undefined,
|
||||||
|
cityId: undefined,
|
||||||
|
countyId: undefined,
|
||||||
|
townId: undefined,
|
||||||
|
name: undefined
|
||||||
|
}
|
||||||
handleQuery()
|
handleQuery()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -189,8 +212,7 @@ const handleAdd = () => {
|
||||||
/** 修改按钮操作 */
|
/** 修改按钮操作 */
|
||||||
const handleUpdate = (row) => {
|
const handleUpdate = (row) => {
|
||||||
reset()
|
reset()
|
||||||
const postId = row.postId || ids.value
|
getBusTradingArea(row.id).then(response => {
|
||||||
getPost(postId).then(response => {
|
|
||||||
form.value = response.data
|
form.value = response.data
|
||||||
open.value = true
|
open.value = true
|
||||||
title.value = "修改商圈"
|
title.value = "修改商圈"
|
||||||
|
@ -205,19 +227,19 @@ const cancel = () => {
|
||||||
|
|
||||||
/** 提交按钮 */
|
/** 提交按钮 */
|
||||||
const submitForm = () => {
|
const submitForm = () => {
|
||||||
proxy.$refs["postRef"].validate(valid => {
|
proxy.$refs["businessAreaRef"].validate(valid => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
if (form.value.postId != undefined) {
|
if (form.value.id != undefined) {
|
||||||
updatePost(form.value).then(response => {
|
updateBusTradingArea(form.value).then(response => {
|
||||||
proxy.$modal.msgSuccess("修改成功")
|
proxy.$modal.msgSuccess("修改成功")
|
||||||
open.value = false
|
open.value = false
|
||||||
getList()
|
getbusinessAreaList()
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
addPost(form.value).then(response => {
|
addBusTradingArea(form.value).then(response => {
|
||||||
proxy.$modal.msgSuccess("新增成功")
|
proxy.$modal.msgSuccess("新增成功")
|
||||||
open.value = false
|
open.value = false
|
||||||
getList()
|
getbusinessAreaList()
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -226,26 +248,18 @@ const submitForm = () => {
|
||||||
|
|
||||||
/** 删除按钮操作 */
|
/** 删除按钮操作 */
|
||||||
function handleDelete(row) {
|
function handleDelete(row) {
|
||||||
const postIds = row.postId || ids.value
|
proxy.$modal.confirm('是否确认删除商圈名称为"' + row.name + '"的数据项?').then(function () {
|
||||||
proxy.$modal.confirm('是否确认删除岗位编号为"' + postIds + '"的数据项?').then(function () {
|
return deleteBusTradingArea(row.id)
|
||||||
return delPost(postIds)
|
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
getList()
|
getbusinessAreaList()
|
||||||
proxy.$modal.msgSuccess("删除成功")
|
proxy.$modal.msgSuccess("删除成功")
|
||||||
}).catch(() => { })
|
}).catch(() => { })
|
||||||
}
|
}
|
||||||
|
|
||||||
const getList = () => {
|
|
||||||
loading.value = true
|
|
||||||
listPost(queryParams.value).then(response => {
|
|
||||||
businessAreaList.value = response.rows
|
|
||||||
total.value = response.total
|
|
||||||
loading.value = false
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 初始化
|
// 初始化
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
bgStore.setBgImage(otherbg)
|
bgStore.setBgImage(otherbg)
|
||||||
|
getbusinessAreaList()
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
|
@ -9,28 +9,28 @@
|
||||||
|
|
||||||
<el-row :gutter="10" class="my_row">
|
<el-row :gutter="10" class="my_row">
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-button type="primary" class="primaryBtn" @click="handleAdd"
|
<el-button type="primary" class="primaryBtn" @click="handleAddRootNode"
|
||||||
v-hasPermi="['system:mediaType:add']">新增</el-button>
|
v-hasPermi="['system:mediaType:add']">新增根节点</el-button>
|
||||||
<el-button type="primary" class="primaryBtn" @click="toggleExpandAll">展开/折叠</el-button>
|
<el-button type="primary" class="primaryBtn" @click="toggleExpandAll">展开/折叠</el-button>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
<el-table v-if="refreshTable" v-loading="loading" height="calc(100vh - 244px)" :data="deptList"
|
<el-table v-if="refreshTable" v-loading="loading" height="calc(100vh - 244px)" :data="mediaTypeTreeList"
|
||||||
row-key="deptId" :default-expand-all="isExpandAll"
|
row-key="deptId" :default-expand-all="isExpandAll" :tree-props="{ children: 'children' }">
|
||||||
:tree-props="{ children: 'children', hasChildren: 'hasChildren' }">
|
<el-table-column prop="name" label="类型名称"></el-table-column>
|
||||||
<el-table-column prop="deptName" label="类型名称"></el-table-column>
|
<el-table-column prop="value" label="类型标识"></el-table-column>
|
||||||
<el-table-column prop="orderNum" label="排序"></el-table-column>
|
<el-table-column prop="sortNo" label="排序"></el-table-column>
|
||||||
<el-table-column label="创建时间" align="center" prop="createTime">
|
<!-- <el-table-column label="创建时间" align="center" prop="createTime" min-width="210">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ parseTime(scope.row.createTime) }}</span>
|
<span>{{ parseTime(scope.row.createTime) }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column> -->
|
||||||
<el-table-column label="操作" align="center" width="230" class-name="small-padding fixed-width">
|
<el-table-column label="操作" align="center" width="230" class-name="small-padding fixed-width">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-button link type="primary" @click="handleUpdate(scope.row)"
|
<el-button link type="primary" @click="handleUpdate(scope.row)"
|
||||||
v-hasPermi="['system:mediaType:edit']">修改</el-button>
|
v-hasPermi="['system:mediaType:edit']">修改</el-button>
|
||||||
<el-button link type="primary" @click="handleAdd(scope.row)"
|
<el-button link type="primary" @click="handleAddChildrenNode(scope.row)"
|
||||||
v-hasPermi="['system:mediaType:add']">新增</el-button>
|
v-hasPermi="['system:mediaType:add']">新增子节点</el-button>
|
||||||
<el-button v-if="scope.row.parentId != 0" link type="primary" @click="handleDelete(scope.row)"
|
<el-button v-if="scope.row.parentId != 0" link type="primary" @click="handleDelete(scope.row)"
|
||||||
v-hasPermi="['system:mediaType:remove']">删除</el-button>
|
v-hasPermi="['system:mediaType:remove']">删除</el-button>
|
||||||
</template>
|
</template>
|
||||||
|
@ -41,26 +41,15 @@
|
||||||
<!-- 添加或修改部门对话框 -->
|
<!-- 添加或修改部门对话框 -->
|
||||||
<el-dialog :title="title" v-model="open" width="800px" class="my_dialog" align-center :destroy-on-close="true"
|
<el-dialog :title="title" v-model="open" width="800px" class="my_dialog" align-center :destroy-on-close="true"
|
||||||
:close-on-click-modal="false">
|
:close-on-click-modal="false">
|
||||||
<el-form ref="deptRef" :model="form" :rules="rules" label-width="100px" class="myInsertForm">
|
<el-form ref="mediaTypeRef" :model="form" :rules="rules" label-width="100px" class="myInsertForm">
|
||||||
<el-form-item label="上级类型" prop="parentId">
|
<el-form-item label="类型名称" prop="name">
|
||||||
<el-tree-select v-model="form.parentId" :data="deptOptions"
|
<el-input v-model="form.name" placeholder="请输入类型名称" />
|
||||||
:props="{ value: 'deptId', label: 'deptName', children: 'children' }" value-key="deptId"
|
|
||||||
placeholder="选择上级类型" check-strictly />
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="类型名称" prop="deptName">
|
<el-form-item label="类型标识" prop="value">
|
||||||
<el-input v-model="form.deptName" placeholder="请输入类型名称" />
|
<el-input v-model="form.value" placeholder="请输入类型名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="显示排序" prop="orderNum">
|
<el-form-item label="显示排序" prop="sortNo">
|
||||||
<el-input-number v-model="form.orderNum" controls-position="right" :min="0" />
|
<el-input-number v-model="form.sortNo" controls-position="right" :min="0" style="width: 100%;" />
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="是否可用">
|
|
||||||
<el-radio-group v-model="form.status">
|
|
||||||
<el-radio v-for="dict in sys_normal_disable" :key="dict.value" :value="dict.value">{{ dict.label
|
|
||||||
}}</el-radio>
|
|
||||||
</el-radio-group>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="备注">
|
|
||||||
<el-input v-model="form.remark" type="textarea" placeholder="请输入内容"></el-input>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
|
@ -75,96 +64,42 @@
|
||||||
|
|
||||||
<script setup name="Dept">
|
<script setup name="Dept">
|
||||||
import { onMounted, ref } from 'vue';
|
import { onMounted, ref } from 'vue';
|
||||||
import { listDept, getDept, delDept, addDept, updateDept, listDeptExcludeChild } from "@/api/system/dept"
|
import { sysMediaTypeTreeList, addSysMediaType, updateSysMediaType, getSysMediaType, deleteSysMediaType } from "@/api/system/mediaType"
|
||||||
import { useBackgroundStore } from '@/store/modules/background'
|
import { useBackgroundStore } from '@/store/modules/background'
|
||||||
import otherbg from '@/assets/images/otherbg.png'
|
import otherbg from '@/assets/images/otherbg.png'
|
||||||
const bgStore = useBackgroundStore()
|
const bgStore = useBackgroundStore()
|
||||||
|
|
||||||
const { proxy } = getCurrentInstance()
|
const { proxy } = getCurrentInstance()
|
||||||
const { sys_normal_disable } = proxy.useDict("sys_normal_disable")
|
|
||||||
|
|
||||||
const deptList = ref([])
|
// 媒体类型tree数据
|
||||||
|
const mediaTypeTreeList = ref([])
|
||||||
const open = ref(false)
|
const open = ref(false)
|
||||||
const loading = ref(true)
|
const loading = ref(true)
|
||||||
const showSearch = ref(true)
|
|
||||||
const title = ref("")
|
const title = ref("")
|
||||||
const deptOptions = ref([])
|
|
||||||
const isExpandAll = ref(true)
|
const isExpandAll = ref(true)
|
||||||
const refreshTable = ref(true)
|
const refreshTable = ref(true)
|
||||||
|
|
||||||
const data = reactive({
|
const data = reactive({
|
||||||
form: {},
|
form: {},
|
||||||
queryParams: {
|
|
||||||
deptName: undefined,
|
|
||||||
status: undefined
|
|
||||||
},
|
|
||||||
rules: {
|
rules: {
|
||||||
parentId: [{ required: true, message: "上级部门不能为空", trigger: "blur" }],
|
name: [{ required: true, message: "类型名称不能为空", trigger: "blur" }],
|
||||||
deptName: [{ required: true, message: "部门名称不能为空", trigger: "blur" }],
|
value: [{ required: true, message: "类型标识不能为空", trigger: "blur" }],
|
||||||
orderNum: [{ required: true, message: "显示排序不能为空", trigger: "blur" }],
|
sortNo: [{ required: true, message: "显示排序不能为空", trigger: "blur" }],
|
||||||
email: [{ type: "email", message: "请输入正确的邮箱地址", trigger: ["blur", "change"] }],
|
|
||||||
phone: [{ pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/, message: "请输入正确的手机号码", trigger: "blur" }]
|
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
const { queryParams, form, rules } = toRefs(data)
|
const { form, rules } = toRefs(data)
|
||||||
|
|
||||||
/** 查询部门列表 */
|
/** 查询媒体类型树列表 */
|
||||||
function getList() {
|
const getsysMediaTypeTreeList = () => {
|
||||||
loading.value = true
|
loading.value = true
|
||||||
listDept(queryParams.value).then(response => {
|
sysMediaTypeTreeList().then(res => {
|
||||||
deptList.value = proxy.handleTree(response.data, "deptId")
|
mediaTypeTreeList.value = res.data
|
||||||
loading.value = false
|
loading.value = false
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 取消按钮 */
|
|
||||||
function cancel() {
|
|
||||||
open.value = false
|
|
||||||
reset()
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 表单重置 */
|
|
||||||
function reset() {
|
|
||||||
form.value = {
|
|
||||||
deptId: undefined,
|
|
||||||
parentId: undefined,
|
|
||||||
deptName: undefined,
|
|
||||||
orderNum: 0,
|
|
||||||
leader: undefined,
|
|
||||||
phone: undefined,
|
|
||||||
email: undefined,
|
|
||||||
status: "0"
|
|
||||||
}
|
|
||||||
proxy.resetForm("deptRef")
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 搜索按钮操作 */
|
|
||||||
function handleQuery() {
|
|
||||||
getList()
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 重置按钮操作 */
|
|
||||||
function resetQuery() {
|
|
||||||
proxy.resetForm("queryRef")
|
|
||||||
handleQuery()
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 新增按钮操作 */
|
|
||||||
function handleAdd(row) {
|
|
||||||
reset()
|
|
||||||
listDept().then(response => {
|
|
||||||
deptOptions.value = proxy.handleTree(response.data, "deptId")
|
|
||||||
})
|
|
||||||
if (row != undefined) {
|
|
||||||
form.value.parentId = row.deptId
|
|
||||||
}
|
|
||||||
open.value = true
|
|
||||||
title.value = "添加类型"
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 展开/折叠操作 */
|
/** 展开/折叠操作 */
|
||||||
function toggleExpandAll() {
|
const toggleExpandAll = () => {
|
||||||
refreshTable.value = false
|
refreshTable.value = false
|
||||||
isExpandAll.value = !isExpandAll.value
|
isExpandAll.value = !isExpandAll.value
|
||||||
nextTick(() => {
|
nextTick(() => {
|
||||||
|
@ -172,34 +107,64 @@ function toggleExpandAll() {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 修改按钮操作 */
|
/** 表单重置 */
|
||||||
function handleUpdate(row) {
|
const reset = () => {
|
||||||
|
form.value = {
|
||||||
|
parentId: undefined,
|
||||||
|
name: undefined,
|
||||||
|
value: undefined,
|
||||||
|
sortNo: 0
|
||||||
|
}
|
||||||
|
proxy.resetForm("mediaTypeRef")
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 新增根节点 */
|
||||||
|
const handleAddRootNode = () => {
|
||||||
reset()
|
reset()
|
||||||
listDeptExcludeChild(row.deptId).then(response => {
|
form.value.parentId = '0'
|
||||||
deptOptions.value = proxy.handleTree(response.data, "deptId")
|
open.value = true
|
||||||
})
|
title.value = "添加媒体类型"
|
||||||
getDept(row.deptId).then(response => {
|
}
|
||||||
|
/** 新增子节点 */
|
||||||
|
const handleAddChildrenNode = (row) => {
|
||||||
|
reset()
|
||||||
|
if (row) {
|
||||||
|
form.value.parentId = row.id
|
||||||
|
}
|
||||||
|
open.value = true
|
||||||
|
title.value = "添加媒体类型"
|
||||||
|
}
|
||||||
|
/** 修改按钮操作 */
|
||||||
|
const handleUpdate = (row) => {
|
||||||
|
reset()
|
||||||
|
getSysMediaType(row.id).then(response => {
|
||||||
form.value = response.data
|
form.value = response.data
|
||||||
open.value = true
|
open.value = true
|
||||||
title.value = "修改类型"
|
title.value = "修改媒体类型"
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** 取消按钮 */
|
||||||
|
const cancel = () => {
|
||||||
|
open.value = false
|
||||||
|
reset()
|
||||||
|
}
|
||||||
|
|
||||||
/** 提交按钮 */
|
/** 提交按钮 */
|
||||||
function submitForm() {
|
const submitForm = () => {
|
||||||
proxy.$refs["deptRef"].validate(valid => {
|
proxy.$refs["mediaTypeRef"].validate(valid => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
if (form.value.deptId != undefined) {
|
if (form.value.id != undefined) {
|
||||||
updateDept(form.value).then(response => {
|
updateSysMediaType(form.value).then(response => {
|
||||||
proxy.$modal.msgSuccess("修改成功")
|
proxy.$modal.msgSuccess("修改成功")
|
||||||
open.value = false
|
open.value = false
|
||||||
getList()
|
getsysMediaTypeTreeList()
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
addDept(form.value).then(response => {
|
addSysMediaType(form.value).then(response => {
|
||||||
proxy.$modal.msgSuccess("新增成功")
|
proxy.$modal.msgSuccess("新增成功")
|
||||||
open.value = false
|
open.value = false
|
||||||
getList()
|
getsysMediaTypeTreeList()
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -207,11 +172,11 @@ function submitForm() {
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 删除按钮操作 */
|
/** 删除按钮操作 */
|
||||||
function handleDelete(row) {
|
const handleDelete = (row) => {
|
||||||
proxy.$modal.confirm('是否确认删除名称为"' + row.deptName + '"的数据项?').then(function () {
|
proxy.$modal.confirm('是否确认删除媒体类型名称为"' + row.name + '"的数据项?').then(function () {
|
||||||
return delDept(row.deptId)
|
return deleteSysMediaType(row.id)
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
getList()
|
getsysMediaTypeTreeList()
|
||||||
proxy.$modal.msgSuccess("删除成功")
|
proxy.$modal.msgSuccess("删除成功")
|
||||||
}).catch(() => { })
|
}).catch(() => { })
|
||||||
}
|
}
|
||||||
|
@ -219,6 +184,6 @@ function handleDelete(row) {
|
||||||
// 初始化
|
// 初始化
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
bgStore.setBgImage(otherbg)
|
bgStore.setBgImage(otherbg)
|
||||||
getList()
|
getsysMediaTypeTreeList()
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -9,8 +9,8 @@
|
||||||
<el-row :gutter="10" class="my_row">
|
<el-row :gutter="10" class="my_row">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form :model="queryParams" ref="queryRef" :inline="true" class="searchInputForm">
|
<el-form :model="queryParams" ref="queryRef" :inline="true" class="searchInputForm">
|
||||||
<el-form-item label="">
|
<el-form-item label="" prop="keyword">
|
||||||
<el-input v-model="form.postCode" placeholder="请输入" :prefix-icon="Search"
|
<el-input v-model="form.keyword" placeholder="请输入" :prefix-icon="Search"
|
||||||
style="width: 300px;" />
|
style="width: 300px;" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
|
@ -23,10 +23,9 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
<el-table v-loading="loading" :data="businessAreaList" height="calc(100vh - 320px)">
|
<el-table v-loading="loading" :data="templateList" height="calc(100vh - 320px)">
|
||||||
<el-table-column label="模板名称" align="center" prop="postId" />
|
<el-table-column label="模板名称" align="center" prop="templateName" />
|
||||||
<el-table-column label="模板类型" align="center" prop="postCode" />
|
<el-table-column label="模板类型" align="center" prop="type" />
|
||||||
<el-table-column label="模板文件" align="center" prop="postName" />
|
|
||||||
<el-table-column label="创建时间" align="center" prop="createTime" width="210">
|
<el-table-column label="创建时间" align="center" prop="createTime" width="210">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ parseTime(scope.row.createTime) }}</span>
|
<span>{{ parseTime(scope.row.createTime) }}</span>
|
||||||
|
@ -42,22 +41,22 @@
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<pagination :total="total" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize"
|
<pagination :total="total" v-model:page="queryParams.pageIndex" v-model:limit="queryParams.pageSize"
|
||||||
@pagination="getList" />
|
@pagination="getList" />
|
||||||
|
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<!-- 添加或修改岗位对话框 -->
|
<!-- 添加或修改模板对话框 -->
|
||||||
<el-dialog :title="title" v-model="open" width="800px" class="my_dialog" align-center :destroy-on-close="true"
|
<el-dialog :title="title" v-model="open" width="800px" class="my_dialog" align-center :destroy-on-close="true"
|
||||||
:close-on-click-modal="false">
|
:close-on-click-modal="false">
|
||||||
<el-form ref="postRef" :model="form" :rules="rules" label-width="120px" class="myInsertForm">
|
<el-form ref="pptTemplateRef" :model="form" :rules="rules" label-width="120px" class="myInsertForm">
|
||||||
<el-form-item label="模板名称" prop="postName">
|
<el-form-item label="模板名称" prop="templateName">
|
||||||
<el-input v-model="form.postCode" placeholder="请输入" />
|
<el-input v-model="form.templateName" placeholder="请输入" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="模板类型" prop="postCode">
|
<el-form-item label="模板类型" prop="type">
|
||||||
<el-input v-model="form.postCode" placeholder="请输入" />
|
<el-input v-model="form.type" placeholder="请输入" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="模板文件" prop="employeeNumber">
|
<el-form-item label="模板文件" prop="fileId">
|
||||||
<el-upload class="upload-demo" drag action="#" :http-request="requestDocUpload"
|
<el-upload class="upload-demo" drag action="#" :http-request="requestDocUpload"
|
||||||
:file-list="docUploadList" :before-upload="beforeDocUpload" :on-remove="removeDocUpload">
|
:file-list="docUploadList" :before-upload="beforeDocUpload" :on-remove="removeDocUpload">
|
||||||
<el-icon class="el-icon--upload"><upload-filled /></el-icon>
|
<el-icon class="el-icon--upload"><upload-filled /></el-icon>
|
||||||
|
@ -83,49 +82,55 @@
|
||||||
<script setup name="Post">
|
<script setup name="Post">
|
||||||
import { onMounted, ref } from 'vue';
|
import { onMounted, ref } from 'vue';
|
||||||
import { Search } from '@element-plus/icons-vue'
|
import { Search } from '@element-plus/icons-vue'
|
||||||
import { listPost, addPost, delPost, getPost, updatePost } from "@/api/system/post"
|
import { pptTemplatePage, addPptTemplate, updatePptTemplate, getPptTemplate, deletePptTemplate } from "@/api/system/pptTemplate"
|
||||||
|
import { uploadFile } from "@/api/common"
|
||||||
import { useBackgroundStore } from '@/store/modules/background'
|
import { useBackgroundStore } from '@/store/modules/background'
|
||||||
import otherbg from '@/assets/images/otherbg.png'
|
import otherbg from '@/assets/images/otherbg.png'
|
||||||
const bgStore = useBackgroundStore()
|
const bgStore = useBackgroundStore()
|
||||||
|
|
||||||
const { proxy } = getCurrentInstance()
|
const { proxy } = getCurrentInstance()
|
||||||
const { sys_normal_disable } = proxy.useDict("sys_normal_disable")
|
|
||||||
|
|
||||||
|
const baseUrl = import.meta.env.VITE_APP_BASE_API
|
||||||
|
// 列表数据
|
||||||
|
const templateList = ref([])
|
||||||
const loading = ref(true)
|
const loading = ref(true)
|
||||||
const businessAreaList = ref([])
|
|
||||||
const total = ref(0)
|
const total = ref(0)
|
||||||
const open = ref(false)
|
const open = ref(false)
|
||||||
const title = ref("")
|
const title = ref("")
|
||||||
const data = reactive({
|
const data = reactive({
|
||||||
form: {},
|
form: {},
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageIndex: 1,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
postCode: undefined,
|
keyword: undefined,
|
||||||
postName: undefined,
|
|
||||||
status: undefined
|
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
postName: [{ required: true, message: "岗位名称不能为空", trigger: "blur" }],
|
templateName: [{ required: true, message: "模板名称不能为空", trigger: "blur" }],
|
||||||
postCode: [{ required: true, message: "岗位编码不能为空", trigger: "blur" }],
|
type: [{ required: true, message: "模板类型不能为空", trigger: "blur" }],
|
||||||
postSort: [{ required: true, message: "岗位顺序不能为空", trigger: "blur" }],
|
fileId: [{ required: true, message: "模板文件不能为空", trigger: "change" }],
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
const { queryParams, form, rules } = toRefs(data)
|
const { queryParams, form, rules } = toRefs(data)
|
||||||
|
|
||||||
|
/** 查询PPT模板列表 */
|
||||||
|
const getpptTemplatePageList = () => {
|
||||||
|
loading.value = true
|
||||||
|
pptTemplatePage(queryParams.value).then(res => {
|
||||||
|
templateList.value = res.list
|
||||||
|
total.value = res.total
|
||||||
|
loading.value = false
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
/** 表单重置 */
|
/** 表单重置 */
|
||||||
const reset = () => {
|
const reset = () => {
|
||||||
form.value = {
|
form.value = {
|
||||||
postId: undefined,
|
templateName: undefined,
|
||||||
postCode: undefined,
|
type: undefined,
|
||||||
postName: undefined,
|
fileId: undefined
|
||||||
postSort: 0,
|
|
||||||
status: "0",
|
|
||||||
remark: undefined
|
|
||||||
}
|
}
|
||||||
proxy.resetForm("postRef")
|
proxy.resetForm("pptTemplateRef")
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 搜索按钮操作 */
|
/** 搜索按钮操作 */
|
||||||
|
@ -150,8 +155,7 @@ const handleAdd = () => {
|
||||||
/** 修改按钮操作 */
|
/** 修改按钮操作 */
|
||||||
const handleUpdate = (row) => {
|
const handleUpdate = (row) => {
|
||||||
reset()
|
reset()
|
||||||
const postId = row.postId || ids.value
|
getPptTemplate(row.id).then(response => {
|
||||||
getPost(postId).then(response => {
|
|
||||||
form.value = response.data
|
form.value = response.data
|
||||||
open.value = true
|
open.value = true
|
||||||
title.value = "修改模板"
|
title.value = "修改模板"
|
||||||
|
@ -166,19 +170,19 @@ const cancel = () => {
|
||||||
|
|
||||||
/** 提交按钮 */
|
/** 提交按钮 */
|
||||||
const submitForm = () => {
|
const submitForm = () => {
|
||||||
proxy.$refs["postRef"].validate(valid => {
|
proxy.$refs["pptTemplateRef"].validate(valid => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
if (form.value.postId != undefined) {
|
if (form.value.postId != undefined) {
|
||||||
updatePost(form.value).then(response => {
|
updatePptTemplate(form.value).then(response => {
|
||||||
proxy.$modal.msgSuccess("修改成功")
|
proxy.$modal.msgSuccess("修改成功")
|
||||||
open.value = false
|
open.value = false
|
||||||
getList()
|
getpptTemplatePageList()
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
addPost(form.value).then(response => {
|
addPptTemplate(form.value).then(response => {
|
||||||
proxy.$modal.msgSuccess("新增成功")
|
proxy.$modal.msgSuccess("新增成功")
|
||||||
open.value = false
|
open.value = false
|
||||||
getList()
|
getpptTemplatePageList()
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -186,28 +190,59 @@ const submitForm = () => {
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 删除按钮操作 */
|
/** 删除按钮操作 */
|
||||||
function handleDelete(row) {
|
const handleDelete = (row) => {
|
||||||
const postIds = row.postId || ids.value
|
proxy.$modal.confirm('是否确认删除岗位编号为"' + row.templateName + '"的数据项?').then(function () {
|
||||||
proxy.$modal.confirm('是否确认删除岗位编号为"' + postIds + '"的数据项?').then(function () {
|
return deletePptTemplate(row.id)
|
||||||
return delPost(postIds)
|
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
getList()
|
getpptTemplatePageList()
|
||||||
proxy.$modal.msgSuccess("删除成功")
|
proxy.$modal.msgSuccess("删除成功")
|
||||||
}).catch(() => { })
|
}).catch(() => { })
|
||||||
}
|
}
|
||||||
|
|
||||||
const getList = () => {
|
const docUploadList = ref([])
|
||||||
loading.value = true
|
// 自定义上传文件资料
|
||||||
listPost(queryParams.value).then(response => {
|
const requestDocUpload = (options) => {
|
||||||
businessAreaList.value = response.rows
|
const { file } = options
|
||||||
total.value = response.total
|
var formData = new FormData();
|
||||||
loading.value = false
|
formData.append('file', file);
|
||||||
|
uploadFile(formData).then(res => {
|
||||||
|
if (res.code == 200) {
|
||||||
|
proxy.$modal.msgSuccess("上传成功")
|
||||||
|
docUploadList.value.push({
|
||||||
|
name: res.originalFilename,
|
||||||
|
url: baseUrl + res.fileName,
|
||||||
|
suffix: res.suffix
|
||||||
|
})
|
||||||
|
form.fileId = ''
|
||||||
|
} else {
|
||||||
|
proxy.$modal.msgError(res.msg);
|
||||||
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
//自定义上传文件资料校验
|
||||||
|
const beforeDocUpload = (file) => {
|
||||||
|
const type = [
|
||||||
|
'application/vnd.openxmlformats-officedocument.presentationml.presentation'
|
||||||
|
];
|
||||||
|
const isPPTX = type.includes(file.type);
|
||||||
|
// 检验文件格式
|
||||||
|
if (!isPPTX) {
|
||||||
|
proxy.$modal.msgError("文件格式错误,请上传.pptx后缀的文件。");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
// 移除已上传文件列表
|
||||||
|
const removeDocUpload = (file, fileList) => {
|
||||||
|
docUploadList.value = docUploadList.value.filter(
|
||||||
|
item => item.name != file.name
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
// 初始化
|
// 初始化
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
bgStore.setBgImage(otherbg)
|
bgStore.setBgImage(otherbg)
|
||||||
|
getpptTemplatePageList()
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
<style lang='scss'>
|
<style lang='scss'>
|
||||||
|
|
Loading…
Reference in New Issue
Block a user