四模块字段-上传修改

This commit is contained in:
FrancisHu 2024-08-12 18:09:14 +08:00
parent 266edb37e6
commit 143a920733
21 changed files with 195 additions and 85 deletions

View File

@ -5,7 +5,7 @@ VUE_APP_TITLE = 博诺思管理系统
ENV = 'development' ENV = 'development'
# 博诺思管理系统/开发环境 # 博诺思管理系统/开发环境
VUE_APP_BASE_API = '/dev-api' VUE_APP_BASE_API = '/prod'
# 路由懒加载 # 路由懒加载
VUE_CLI_BABEL_TRANSPILE_MODULES = true VUE_CLI_BABEL_TRANSPILE_MODULES = true

View File

@ -9,7 +9,7 @@ export const addProtocolApi = (data) => {
} }
/** 删除协议 */ /** 删除协议 */
export const deleteProtocolApi = (id) => { export const deleteProtocolApi = (id) => {
return request.delete('/xxx/xx', id) return request.delete(`/base/agreement/${id}`)
} }
/** 修改协议 */ /** 修改协议 */
export const editProtocolApi = (data) => { export const editProtocolApi = (data) => {

View File

@ -9,7 +9,7 @@ export const addContactUnitsApi = (data) => {
} }
/** 删除往来单位 */ /** 删除往来单位 */
export const deleteContactUnitsApi = (id) => { export const deleteContactUnitsApi = (id) => {
return request.delete('/xxx/xx', id) return request.delete(`/base/customer/${id}`)
} }
/** 修改往来单位 */ /** 修改往来单位 */
export const editContactUnitsApi = (data) => { export const editContactUnitsApi = (data) => {

View File

@ -9,7 +9,7 @@ export const addProjectApi = (data) => {
} }
/** 删除工程 */ /** 删除工程 */
export const deleteProjectApi = (id) => { export const deleteProjectApi = (id) => {
return request.delete(`/base/project?${id}`, ) return request.delete(`/base/project/${id}`, )
} }
/** 修改工程 */ /** 修改工程 */
export const editProjectApi = (data) => { export const editProjectApi = (data) => {

View File

@ -9,7 +9,7 @@ export const addUnitTypeApi = (data) => {
} }
/** 删除单位类型*/ /** 删除单位类型*/
export const deleteUnitTypeApi = (id) => { export const deleteUnitTypeApi = (id) => {
return request.delete('/xxx/xx', id) return request.delete(`/base/unittype/${id}`)
} }
/** 修改单位类型*/ /** 修改单位类型*/
export const editUnitTypeApi = (data) => { export const editUnitTypeApi = (data) => {

24
src/api/system/upload.js Normal file
View File

@ -0,0 +1,24 @@
import request from '@/utils/request'
//资源图片上传
export function imgUpLoad(param) {
const formData = new FormData()
formData.append('file', param.file)
// formData.append('fileType', param.type)
return request({
url: '/file/upload',
method: 'post',
data: formData,
header: 'multipart/form-data'
})
}
//资源文件上传
export function fileUpLoad(param) {
const formData = new FormData()
formData.append('file', param.file)
return request({
url: '/file/upload',
method: 'post',
data: formData,
})
}

View File

@ -98,7 +98,7 @@ service.interceptors.response.use(res => {
isRelogin.show = false; isRelogin.show = false;
}); });
} }
return Promise.reject('无效的会话,或者会话已过期,请重新登录。') // return Promise.reject('无效的会话,或者会话已过期,请重新登录。')
} else if (code === 500) { } else if (code === 500) {
Message({ message: msg, type: 'error' }) Message({ message: msg, type: 'error' })
return Promise.reject(new Error(msg)) return Promise.reject(new Error(msg))

View File

@ -13,15 +13,16 @@ export const commonMixin = {
this.dialogConfig.outerVisible = true this.dialogConfig.outerVisible = true
}, },
/** 删除 */ /** 删除 */
handleDeleteData(id) { handleDeleteData(id, method) {
this.$modal.confirm('是否确定删除').then(() => { this.$modal.confirm('是否确定删除').then(() => {
console.log('确定删除--', id) console.log('确定删除--', id)
/* deleteProjectApi(id).then(res => { method(id).then(res => {
console.log(res) console.log(res)
history.go(0) if(res.code === 200) {
}).catch(err => { // this.$message.msgSuccess('操作成功!')
console.log(err) this.$refs.tableRef.getTableList()
}) */ }
}).catch(err => {})
}) })
}, },
/** 编辑 */ /** 编辑 */
@ -35,8 +36,14 @@ export const commonMixin = {
console.log('导入--') console.log('导入--')
}, },
/** 导出数据 */ /** 导出数据 */
handleExportData() { handleExportData(data, url, fileName) {
console.log('导出--') this.download(
url,
{
...data
},
`${fileName}_${new Date().getTime()}.xlsx`,
)
}, },
/** 关闭外侧弹框 */ /** 关闭外侧弹框 */
closeDialogOuter() { closeDialogOuter() {
@ -48,8 +55,11 @@ export const commonMixin = {
}, },
/** 关闭弹框 由表单组件通知父组件关闭弹框的自定义事件 */ /** 关闭弹框 由表单组件通知父组件关闭弹框的自定义事件 */
closeDialog() { closeDialog(type) {
this.dialogConfig.outerVisible = false this.dialogConfig.outerVisible = false
if(type) {
this.$refs.tableRef.getTableList()
}
}, },
} }
} }

View File

@ -80,7 +80,22 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="合同附件" prop="url"> <el-form-item label="合同附件" prop="url">
<el-input v-model="protocolParams.url" /> <el-upload
:http-request="(obj) => imgUpLoad(obj)"
action="#"
:file-list="fileList"
:show-file-list="false"
list-type="picture-card"
accept=".png,.jpg,.jpeg"
>
<img
v-if="protocolParams.url"
:src="protocolParams.url"
style="width: 140px; height: 140px"
class="avatar"
/>
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
</el-upload>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -114,7 +129,10 @@ import {
import { import {
queryProjectSelApi queryProjectSelApi
} from '@/api/base/project' } from '@/api/base/project'
import { addProjectApi, editProjectApi } from '@/api/base/project' import {
fileUpLoad,
imgUpLoad
} from '@/api/system/upload'
export default { export default {
name: 'FormProtocol', name: 'FormProtocol',
props: { props: {
@ -148,6 +166,7 @@ export default {
remark: '', // remark: '', //
url: '', // url: '', //
}, },
fileList: [],
// //
unitSelRange: [], unitSelRange: [],
// //
@ -210,6 +229,14 @@ export default {
}) })
}).catch(err => {}) }).catch(err => {})
}, },
/** 上传图片 */
imgUpLoad(param) {
console.log(param)
imgUpLoad(param).then(res => {
console.log(res, process.env.VUE_APP_BASE_API)
this.protocolParams.url = res.data.url
}).catch(err => {})
},
/** 确认按钮 */ /** 确认按钮 */
onSubmit() { onSubmit() {
this.$refs.protocolParamsRef.validate((valid) => { this.$refs.protocolParamsRef.validate((valid) => {
@ -219,24 +246,18 @@ export default {
if(this.subSort === 1) { if(this.subSort === 1) {
addProtocolApi(this.protocolParams).then(res => { addProtocolApi(this.protocolParams).then(res => {
console.log(res) console.log(res)
// 2.
this.$emit('closeDialog')
history.go(0)
}).catch(err => { }).catch(err => {
console.log(err) console.log(err)
}) })
} else if(this.subSort === 2) { } else if(this.subSort === 2) {
editProtocolApi(this.protocolParams).then(res => { editProtocolApi(this.protocolParams).then(res => {
console.log(res) console.log(res)
// 2.
this.$emit('closeDialog')
history.go(0)
}).catch(err => { }).catch(err => {
console.log(err) console.log(err)
}) })
} }
// 2. // 2.
this.$emit('closeDialog') this.$emit('closeDialog', true)
} }
}) })
}, },
@ -248,4 +269,7 @@ export default {
::v-deep .el-select { ::v-deep .el-select {
width: 100%; width: 100%;
} }
::v-deep .el-form-item__label{
font-weight: normal;
}
</style> </style>

View File

@ -13,14 +13,14 @@ export const columnsList = [
{ t_props: 'signDate', t_label: '协议签订时间', }, { t_props: 'signDate', t_label: '协议签订时间', },
{ t_props: 'code', t_label: '协议编号' }, { t_props: 'code', t_label: '协议编号' },
{ t_props: 'contractNumber', t_label: '合同编号' }, { t_props: 'contractNumber', t_label: '合同编号' },
{ t_props: 'customer', t_label: '租赁单位', }, { t_props: 'unitName', t_label: '租赁单位', },
{ t_props: 'project', t_label: '租赁工程', }, { t_props: 'projectName', t_label: '租赁工程', },
{ t_props: 'startTime', t_label: '开始日期', }, { t_props: 'startTime', t_label: '开始日期', },
// { t_props: 'itemType', t_label: '租赁期限(天)', }, // { t_props: 'itemType', t_label: '租赁期限(天)', },
{ t_props: 'authorizingPerson', t_label: '授权人', }, { t_props: 'authorizingPerson', t_label: '授权人', },
{ t_props: 'authorizingPhone', t_label: '授权人电话', }, { t_props: 'authorizingPhone', t_label: '授权人电话', },
// { t_props: 'itemType', t_label: '租赁单位类型', }, // { t_props: 'itemType', t_label: '租赁单位类型', },
{ t_props: 'url', t_label: '合同文件', }, { t_props: 'url', t_label: '合同文件', t_slot: 'url' },
{ t_props: 'remark', t_label: '备注', }, { t_props: 'remark', t_label: '备注', },
] ]

View File

@ -6,12 +6,13 @@
:formLabel="formLabel" :formLabel="formLabel"
:columnsList="columnsList" :columnsList="columnsList"
:request-api="queryProtocolListApi" :request-api="queryProtocolListApi"
ref="tableRef"
> >
<template slot="btn" slot-scope="{ queryParams }"> <template slot="btn" slot-scope="{ queryParams }">
<el-button type="primary" @click="handleAddData()" <el-button type="primary" @click="handleAddData()"
>新增协议</el-button >新增协议</el-button
> >
<el-button @click="handleExportData(queryParams)" <el-button @click="handleExportData(queryParams, 'base/agreement/export', '协议清单')"
>导出</el-button >导出</el-button
> >
</template> </template>
@ -25,10 +26,13 @@
<el-button <el-button
type="danger" type="danger"
size="mini" size="mini"
@click="handleDeleteData(data)" @click="handleDeleteData(data.id, deleteProtocolApi)"
>删除</el-button >删除</el-button
> >
</template> </template>
<template slot="url" slot-scope="{ data }">
<img :src="data.url" style="width: 50px; height: 50px">
</template>
</TableModel> </TableModel>
<!-- 新增以及修改时的弹框 --> <!-- 新增以及修改时的弹框 -->
@ -51,14 +55,14 @@
import { formLabel, columnsList, dialogConfig } from './config' import { formLabel, columnsList, dialogConfig } from './config'
import { commonMixin } from '../mixins/common' import { commonMixin } from '../mixins/common'
import FormProtocol from './components/form-protocol' import FormProtocol from './components/form-protocol'
import { queryProtocolListApi } from '@/api/base/agreement' import { queryProtocolListApi, deleteProtocolApi } from '@/api/base/agreement'
export default { export default {
name: 'ProtocolManage', name: 'ProtocolManage',
mixins: [commonMixin], // mixins: [commonMixin], //
components: { components: {
FormProtocol, FormProtocol,
}, },
methods: { queryProtocolListApi }, methods: { queryProtocolListApi, deleteProtocolApi },
data() { data() {
return { return {
formLabel, formLabel,

View File

@ -25,10 +25,10 @@
</el-form-item> </el-form-item>
<el-form-item label="启用状态" prop="isActive"> <el-form-item label="启用状态" prop="isActive">
<el-switch <el-switch
active-text="启用"
inactive-text="禁用"
active-value="1" active-value="1"
inactive-value="0" inactive-value="0"
active-color="#13ce66"
inactive-color="#ff4949"
v-model="contactUnitsParams.isActive" v-model="contactUnitsParams.isActive"
></el-switch> ></el-switch>
</el-form-item> </el-form-item>
@ -129,16 +129,14 @@ export default {
if(this.subSort === 1) { if(this.subSort === 1) {
addContactUnitsApi(this.contactUnitsParams).then(res => { addContactUnitsApi(this.contactUnitsParams).then(res => {
console.log(res) console.log(res)
history.go(0)
}).catch(err => {}) }).catch(err => {})
} else if(this.subSort === 2) { } else if(this.subSort === 2) {
editContactUnitsApi(this.contactUnitsParams).then(res => { editContactUnitsApi(this.contactUnitsParams).then(res => {
console.log(res) console.log(res)
history.go(0)
}).catch(err => {}) }).catch(err => {})
} }
// 2. // 2.
this.$emit('closeDialog') this.$emit('closeDialog', true)
} }
}) })
}, },
@ -150,4 +148,7 @@ export default {
::v-deep .el-select { ::v-deep .el-select {
width: 100%; width: 100%;
} }
::v-deep .el-form-item__label{
font-weight: normal;
}
</style> </style>

View File

@ -8,7 +8,7 @@ export const columnsList = [
{ t_props: 'companyId', t_label: '所属分公司' }, { t_props: 'companyId', t_label: '所属分公司' },
{ t_props: 'materialClerk', t_label: '材料员', }, { t_props: 'materialClerk', t_label: '材料员', },
{ t_props: 'phone', t_label: '联系电话', }, { t_props: 'phone', t_label: '联系电话', },
{ t_props: 'isActive', t_label: '状态', }, { t_props: 'isActive', t_label: '状态', t_slot: 'isActive' },
] ]
export const dialogConfig = { export const dialogConfig = {

View File

@ -6,12 +6,14 @@
:formLabel="formLabel" :formLabel="formLabel"
:columnsList="columnsList" :columnsList="columnsList"
:request-api="queryContactUnitsListApi" :request-api="queryContactUnitsListApi"
ref="tableRef"
> >
<template slot="btn" slot-scope="{ queryParams }"> <template slot="btn" slot-scope="{ queryParams }">
<el-button type="primary" @click="handleAddData()" <el-button type="primary" @click="handleAddData()"
>新建</el-button >新建</el-button
> >
<el-button @click="handleExportData(queryParams)" <el-button @click="handleExportData(queryParams, 'base/customer/export', '往来单位清单')"
>导出</el-button >导出</el-button
> >
</template> </template>
@ -26,10 +28,13 @@
<el-button <el-button
type="danger" type="danger"
size="mini" size="mini"
@click="handleDeleteData(data)" @click="handleDeleteData(data.id, deleteContactUnitsApi)"
>删除</el-button >删除</el-button
> >
</template> </template>
<template slot="isActive" slot-scope="{ data }">
{{ data.isActive == '1' ? '启用' : '不启用' }}
</template>
</TableModel> </TableModel>
<!-- 新增以及修改时的弹框 --> <!-- 新增以及修改时的弹框 -->
@ -52,12 +57,12 @@
import { formLabel, columnsList, dialogConfig } from './config' import { formLabel, columnsList, dialogConfig } from './config'
import { commonMixin } from '../mixins/common' import { commonMixin } from '../mixins/common'
import FormContactUnits from './components/form-contact-units.vue' import FormContactUnits from './components/form-contact-units.vue'
import { queryContactUnitsListApi } from '@/api/base/customer' import { queryContactUnitsListApi, deleteContactUnitsApi } from '@/api/base/customer'
export default { export default {
name: 'ContactUnits', name: 'ContactUnits',
mixins: [commonMixin], // mixins: [commonMixin], //
components: { FormContactUnits }, components: { FormContactUnits },
methods: { queryContactUnitsListApi }, methods: { queryContactUnitsListApi, deleteContactUnitsApi },
data() { data() {
return { return {
formLabel, formLabel,

View File

@ -24,27 +24,52 @@
<el-row :gutter="24"> <el-row :gutter="24">
<el-col :span="12"> <el-col :span="12">
<el-form-item label="实施单位" prop="impUnit"> <el-form-item label="实施单位" prop="impUnit">
<el-select v-model="projectParams.impUnit"></el-select> <el-select
v-model="projectParams.impUnit"
>
<el-option
v-for="item in proSelRanges.pro_unit_range"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="工程类型" prop="pro_type_of"> <el-form-item label="工程类型" prop="pro_type_of">
<el-select <el-select
v-model="projectParams.pro_type_of" v-model="projectParams.projectType"
></el-select> >
<el-option
v-for="item in proSelRanges.pro_type_range"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="24"> <el-row :gutter="24">
<el-col :span="12"> <el-col :span="12">
<el-form-item label="工程状态" prop="pro_type"> <el-form-item label="工程状态" prop="stats">
<el-select v-model="projectParams.pro_type"></el-select> <el-select
v-model="projectParams.stats"
>
<el-option
v-for="item in proSelRanges.pro_stats_range"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="工程性质" prop="pro_nature"> <el-form-item label="工程性质" prop="nature">
<el-select <el-select
v-model="projectParams.pro_nature" v-model="projectParams.nature"
> >
<el-option <el-option
v-for="item in proSelRanges.pro_nature_range" v-for="item in proSelRanges.pro_nature_range"
@ -152,6 +177,9 @@ export default {
name: '', // name: '', //
num: '', // num: '', //
impUnit: '', // impUnit: '', //
projectType: '', //
stats: '', //
nature: '', //
manager: '', // manager: '', //
phone: '', // phone: '', //
htzt: '', // htzt: '', //
@ -162,11 +190,10 @@ export default {
}, },
// //
proSelRanges: { proSelRanges: {
pro_nature_range: [ pro_unit_range: [], //
{ label: 'a', value: '1' }, pro_type_range: [], //
{ label: 'b', value: '2' }, pro_stats_range: [], //
{ label: 'c', value: '3' }, pro_nature_range: [], //
]
}, },
// //
projectParamsRules: { projectParamsRules: {
@ -209,6 +236,10 @@ export default {
} }
}, },
methods: { methods: {
/** 获取各类下拉框 */
getSelRanges() {
//
},
/** 确认按钮 */ /** 确认按钮 */
onSubmit() { onSubmit() {
this.$refs.projectParamsRef.validate(valid => { this.$refs.projectParamsRef.validate(valid => {
@ -218,22 +249,18 @@ export default {
if(this.subSort === 1) { if(this.subSort === 1) {
addProjectApi(this.projectParams).then(res => { addProjectApi(this.projectParams).then(res => {
console.log(res) console.log(res)
// 2.
this.$emit('closeDialog')
history.go(0)
}).catch(err => { }).catch(err => {
console.log(err) console.log(err)
}) })
} else if(this.subSort === 2) { } else if(this.subSort === 2) {
editProjectApi(this.projectParams).then(res => { editProjectApi(this.projectParams).then(res => {
console.log(res) console.log(res)
// 2.
this.$emit('closeDialog')
history.go(0)
}).catch(err => { }).catch(err => {
console.log(err) console.log(err)
}) })
} }
// 2.
this.$emit('closeDialog', true)
} }
}) })
}, },
@ -245,4 +272,7 @@ export default {
::v-deep .el-select { ::v-deep .el-select {
width: 100%; width: 100%;
} }
::v-deep .el-form-item__label{
font-weight: normal;
}
</style> </style>

View File

@ -1,17 +1,18 @@
export const formLabel = [ export const formLabel = [
{ f_label: '工程名称', f_model: 'keywords', f_type: 'ipt' }, { f_label: '工程名称', f_model: 'name', f_type: 'ipt' },
] ]
export const columnsList = [ export const columnsList = [
{ t_props: 'name', t_label: '工程项目名称', }, { t_props: 'name', t_label: '工程项目名称', },
{ t_props: 'impUnit', t_label: '实施单位' }, { t_props: 'impUnit', t_label: '实施单位' },
{ t_props: 'projectType', t_label: '工程类型' }, { t_props: 'projectType', t_label: '工程类型' },
{ t_props: 'proId', t_label: 'i8工程id', }, { t_props: 'proId', t_label: 'i8工程id', },
{ t_props: 'isMatch', t_label: '是否匹配i8工程', }, { t_props: 'isMatch', t_label: '是否匹配i8工程', t_slot: 'isMatch' },
{ t_props: 'htzt', t_label: '合同主体', }, { t_props: 'htzt', t_label: '合同主体', },
{ t_props: 'manager', t_label: '项目经理', }, { t_props: 'manager', t_label: '项目经理', },
{ t_props: 'phone', t_label: '联系电话', }, { t_props: 'phone', t_label: '联系电话', },
{ t_props: 'stats', t_label: '工程状态', }, { t_props: 'stats', t_label: '工程状态', },
{ t_props: 'remark', t_label: '备注', },
] ]
export const dialogConfig = { export const dialogConfig = {

View File

@ -6,12 +6,14 @@
:formLabel="formLabel" :formLabel="formLabel"
:columnsList="columnsList" :columnsList="columnsList"
:request-api="queryProjectListApi" :request-api="queryProjectListApi"
ref="tableRef"
> >
<template slot="btn" slot-scope="{ queryParams }"> <template slot="btn" slot-scope="{ queryParams }">
<el-button type="primary" @click="handleAddData()" <el-button type="primary" @click="handleAddData()"
>新建</el-button >新建</el-button
> >
<el-button @click="handleExportData(queryParams)" <el-button @click="handleExportData(queryParams, 'base/project/export', '工程清单')"
>导出</el-button >导出</el-button
> >
</template> </template>
@ -25,10 +27,13 @@
<el-button <el-button
type="danger" type="danger"
size="mini" size="mini"
@click="handleDeleteData(data.id)" @click="handleDeleteData(data.id, deleteProjectApi)"
>删除</el-button >删除</el-button
> >
</template> </template>
<template slot="isMatch" slot-scope="{ data }">
{{ data.proId == null ? '不匹配' : '匹配' }}
</template>
</TableModel> </TableModel>
<!-- 新增以及修改时的弹框 --> <!-- 新增以及修改时的弹框 -->
@ -51,10 +56,10 @@
import { formLabel, columnsList, dialogConfig } from './config' import { formLabel, columnsList, dialogConfig } from './config'
import { commonMixin } from '../mixins/common' import { commonMixin } from '../mixins/common'
import FormProject from './components/form-project' import FormProject from './components/form-project'
import { queryProjectListApi } from '@/api/base/project' import { queryProjectListApi, deleteProjectApi } from '@/api/base/project'
export default { export default {
name: 'ProjectManage', name: 'ProjectManage',
methods: { queryProjectListApi }, methods: { queryProjectListApi, deleteProjectApi },
mixins: [commonMixin], // mixins: [commonMixin], //
components: { components: {
FormProject, FormProject,

View File

@ -12,10 +12,10 @@
<el-input v-model="unitsTypeParams.name" /> <el-input v-model="unitsTypeParams.name" />
</el-form-item> </el-form-item>
<el-form-item label="启用状态" prop="isActive"> <el-form-item label="启用状态" prop="isActive" v-if="subSort !== 1">
<el-switch <el-switch
active-text="启用" active-color="#13ce66"
inactive-text="禁用" inactive-color="#ff4949"
active-value="1" active-value="1"
inactive-value="0" inactive-value="0"
v-model="unitsTypeParams.isActive" v-model="unitsTypeParams.isActive"
@ -39,7 +39,7 @@
<script> <script>
import { import {
addUnitTypeApi, addUnitTypeApi,
editUnitTypeApi editUnitTypeApi,
} from '@/api/base/unitType' } from '@/api/base/unitType'
export default { export default {
name: 'FormUnitsType', name: 'FormUnitsType',
@ -63,7 +63,7 @@ export default {
subSort: '', // 1 / 2 subSort: '', // 1 / 2
unitsTypeParams: { unitsTypeParams: {
name: '', // name: '', //
isActive: '', // isActive: '1', //
}, },
// //
unitsTypeParamsRules: { unitsTypeParamsRules: {
@ -94,27 +94,30 @@ export default {
if(this.subSort === 1) { if(this.subSort === 1) {
addUnitTypeApi(this.unitsTypeParams).then(res => { addUnitTypeApi(this.unitsTypeParams).then(res => {
console.log(res) console.log(res)
// 2.
this.$emit('closeDialog')
history.go(0)
}).catch(err => { }).catch(err => {
console.log(err) console.log(err)
}) })
} else if(this.subSort === 2) { } else if(this.subSort === 2) {
editUnitTypeApi(this.unitsTypeParams).then(res => { editUnitTypeApi(this.unitsTypeParams).then(res => {
console.log(res) console.log(res)
// 2.
this.$emit('closeDialog')
history.go(0)
}).catch(err => { }).catch(err => {
console.log(err) console.log(err)
}) })
} }
// 2. // 2.
this.$emit('closeDialog') this.$emit('closeDialog', true)
} }
}) })
}, },
}, },
} }
</script> </script>
<style scoped>
::v-deep .el-select {
width: 100%;
}
::v-deep .el-form-item__label{
font-weight: normal;
}
</style>

View File

@ -1,6 +1,6 @@
export const formLabel = [ export const formLabel = [
{ f_label: '单位名称', f_model: 'keywords', f_type: 'ipt' }, { f_label: '单位名称', f_model: 'name', f_type: 'ipt' },
] ]
export const columnsList = [ export const columnsList = [
{ t_props: 'name', t_label: '单位类型', }, { t_props: 'name', t_label: '单位类型', },

View File

@ -6,12 +6,14 @@
:formLabel="formLabel" :formLabel="formLabel"
:columnsList="columnsList" :columnsList="columnsList"
:requestApi="queryUnitTypeListApi" :requestApi="queryUnitTypeListApi"
ref="tableRef"
> >
<template slot="btn" slot-scope="{ queryParams }"> <template slot="btn" slot-scope="{ queryParams }">
<el-button type="primary" @click="handleAddData()" <el-button type="primary" @click="handleAddData()"
>新建</el-button >新建</el-button
> >
<el-button @click="handleExportData(queryParams)" <el-button @click="handleExportData(queryParams, 'base/unittype/export', '单位类型清单')"
>导出</el-button >导出</el-button
> >
</template> </template>
@ -25,13 +27,13 @@
<el-button <el-button
type="danger" type="danger"
size="mini" size="mini"
@click="handleDeleteData(data)" @click="handleDeleteData(data.id, deleteUnitTypeApi)"
>删除</el-button >删除</el-button
> >
</template> </template>
<template slot="isActive" slot-scope="{ data }"> <template slot="isActive" slot-scope="{ data }">
<!-- {{ data }}--> <!-- {{ data }}-->
{{ data.isActive == '1' ? '启用' : '用' }} {{ data.isActive == '1' ? '启用' : '不启用' }}
</template> </template>
</TableModel> </TableModel>
@ -55,14 +57,14 @@
import { formLabel, columnsList, dialogConfig } from './config' import { formLabel, columnsList, dialogConfig } from './config'
import { commonMixin } from '../mixins/common' import { commonMixin } from '../mixins/common'
import FormUnitsType from './components/form-units-type' import FormUnitsType from './components/form-units-type'
import { queryUnitTypeListApi } from '@/api/base/unitType.js' import { queryUnitTypeListApi, deleteUnitTypeApi } from '@/api/base/unitType.js'
export default { export default {
name: 'UnitType', name: 'UnitType',
mixins: [commonMixin], // mixins: [commonMixin], //
components: { components: {
FormUnitsType, FormUnitsType,
}, },
methods: { queryUnitTypeListApi }, methods: { queryUnitTypeListApi, deleteUnitTypeApi },
data() { data() {
return { return {
formLabel, formLabel,
@ -72,7 +74,6 @@ export default {
addDialogTitle: '新建单位类型', addDialogTitle: '新建单位类型',
// //
editDialogTitle: '修改单位类型', editDialogTitle: '修改单位类型',
queryUnitTypeListApi,
} }
}, },
} }

View File

@ -35,7 +35,9 @@ module.exports = {
proxy: { proxy: {
// detail: https://cli.vuejs.org/config/#devserver-proxy // detail: https://cli.vuejs.org/config/#devserver-proxy
[process.env.VUE_APP_BASE_API]: { [process.env.VUE_APP_BASE_API]: {
target: `http://192.168.2.31:18080`, // 代理的后台ip 端口 解决请求跨域 // target: `http://192.168.2.13:18080`, // 代理的后台ip 端口 解决请求跨域
// target: `http://172.20.10.2:18080`, // 阮
target: `http://192.168.2.21:18080`, // 马
changeOrigin: true, changeOrigin: true,
pathRewrite: { pathRewrite: {
['^' + process.env.VUE_APP_BASE_API]: '' ['^' + process.env.VUE_APP_BASE_API]: ''