request 请求修改

This commit is contained in:
曹前明 2022-06-17 10:46:01 +08:00
parent 5586dea490
commit f7a785e40f
5 changed files with 159 additions and 184 deletions

View File

@ -3,14 +3,14 @@ import http from "@/utils/request"
export default { export default {
upload: { upload: {
url: `${config.API_URL}/upload`, url: `${config.API_URL}/file/`,
name: "文件上传", name: "文件上传",
post: async function(data, config={}){ post: async function(data, config={}){
return await http.post(this.url, data, config); return await http.post(this.url, data, config);
} }
}, },
uploadFile: { uploadFile: {
url: `${config.API_URL}/uploadFile`, url: `${config.API_URL}/file/`,
name: "附件上传", name: "附件上传",
post: async function(data, config={}){ post: async function(data, config={}){
return await http.post(this.url, data, config); return await http.post(this.url, data, config);

View File

@ -3,12 +3,15 @@ import http from "@/utils/request"
export default { export default {
employee: { employee: {
list: { list: async function(data){
url: `${config.API_URL}/hrm/employee/`, return await http.get(
name: "获取企业员工", `${config.API_URL}/hrm/employee/`,
get: async function(data){ data);
return await http.get(this.url, data); },
} update: async function(id, data){
return await http.put(
`${config.API_URL}/hrm/employee/${id}/`,
data);
} }
}, },
} }

View File

@ -279,7 +279,7 @@ export default {
Object.assign(reqData, this.tableParams); Object.assign(reqData, this.tableParams);
try { try {
var res = await this.apiObj.get(reqData); var res = await this.apiObj(reqData);
if (this.hidePagination) { if (this.hidePagination) {
this.tableData = res; this.tableData = res;
if (res.length == 0) { if (res.length == 0) {

View File

@ -14,7 +14,7 @@
</div> </div>
</el-header> </el-header>
<el-main class="nopadding"> <el-main class="nopadding">
<scTable ref="table" :apiObj="apiObj" row-key="id" @selection-change="selectionChange" stripe :resetQuery="resetQuery" > <scTable ref="table" :apiObj="apiObj" row-key="id" @selection-change="selectionChange" stripe @resetQuery="resetQuery" >
<el-table-column type="selection" width="50"></el-table-column> <el-table-column type="selection" width="50"></el-table-column>
<el-table-column label="#" type="index" width="50"></el-table-column> <el-table-column label="#" type="index" width="50"></el-table-column>
<el-table-column label="姓名" prop="name" width="150"></el-table-column> <el-table-column label="姓名" prop="name" width="150"></el-table-column>

View File

@ -1,181 +1,153 @@
<template> <template>
<el-drawer :title="titleMap[mode]" v-model="visible" :size="1000" destroy-on-close @closed="$emit('closed')"> <el-drawer
<el-container v-loading="loading"> :title="titleMap[mode]"
<el-main style="padding:0 20px 20px 20px"> v-model="visible"
:size="1000"
<el-form ref="dialogForm" :model="form" :rules="rules" label-width="100px" label-position="top"> destroy-on-close
<sc-title title="基础"></sc-title> @closed="$emit('closed')"
<el-row :gutter="20"> >
<el-col :span="16"> <el-container v-loading="loading">
<el-form-item label="表格名称" prop="name"> <el-main style="padding: 0 20px 20px 20px">
<el-input v-model="form.name" placeholder="请输入中文描述标题"></el-input> <el-form
</el-form-item> ref="dialogForm"
</el-col> :model="form"
<el-col :span="8"> :rules="rules"
<el-form-item label="标识" prop="code"> label-width="80px"
<el-input v-model="form.code" placeholder="请输入唯一标识"></el-input> >
</el-form-item> <sc-title title="详细信息"></sc-title>
</el-col> <el-row>
</el-row> <el-col :md="8" :sm="12" :xs="24">
<el-form-item> <el-form-item label="姓名">
<el-checkbox v-model="form.remoteSort" label="远程排序"></el-checkbox> <el-input v-model="form.name" type="text" clearable></el-input>
<el-checkbox v-model="form.remoteFilter" label="远程过滤"></el-checkbox> </el-form-item>
</el-form-item> </el-col>
<sc-title title="表格列"></sc-title> <el-col :md="8" :sm="12" :xs="24">
<el-form-item prop="column"> <el-form-item label="工号">
<sc-form-table v-model="form.column" :addTemplate="addTemplate" drag-sort placeholder="暂无数据"> <el-input v-model="form.number" type="text" clearable></el-input>
<el-table-column prop="label" label="名称"> </el-form-item>
<template #default="scope"> </el-col>
<el-input v-model="scope.row.label" placeholder="请输入名称"></el-input> <el-col :md="8" :sm="12" :xs="24">
</template> <el-form-item label="手机号">
</el-table-column> <el-input v-model="form.phone" type="text" clearable></el-input>
<el-table-column prop="prop" label="字段" width="150"> </el-form-item>
<template #default="scope"> </el-col>
<el-input v-model="scope.row.prop" placeholder="请输入字段"></el-input> <el-col :md="8" :sm="12" :xs="24">
</template> <el-form-item label="邮箱号">
</el-table-column> <el-input v-model="form.email" type="text" clearable></el-input>
<el-table-column prop="width" label="宽度" width="100"> </el-form-item>
<template #default="scope"> </el-col>
<el-input v-model="scope.row.width" placeholder="请输入宽度"></el-input> <el-col :md="8" :sm="12" :xs="24">
</template> <el-form-item label="身份证号">
</el-table-column> <el-input v-model="form.id_number" type="text" clearable></el-input>
<el-table-column prop="hide" label="隐藏" width="80" align="center"> </el-form-item>
<template #default="scope"> </el-col>
<el-checkbox v-model="scope.row.hide"></el-checkbox> <el-col :md="8" :sm="12" :xs="24">
</template> <el-form-item label="学历">
</el-table-column> <el-input v-model="form.qualification" type="text" clearable></el-input>
<el-table-column prop="sortable" label="排序" width="80" align="center"> </el-form-item>
<template #default="scope"> </el-col>
<el-checkbox v-model="scope.row.sortable"></el-checkbox> </el-row>
</template> </el-form>
</el-table-column> <el-row>
<el-table-column prop="filters" label="过滤项" width="90" align="center"> <el-col :md="8" :sm="12" :xs="24">
<template #default="scope"> <el-form-item label="证件照" label-width="80px">
<el-button text size="small" :type="scope.row.filters.length==0?'':'primary'" @click="setFilters(scope.row.filters)">过滤项</el-button> <sc-upload v-model="form.photo" title="头像"></sc-upload>
</template> </el-form-item>
</el-table-column> </el-col>
<el-table-column prop="fixed" label="固定" width="80" align="center"> </el-row>
<template #default="scope"> </el-main>
<el-checkbox v-model="scope.row.fixed"></el-checkbox> <el-footer>
</template> <el-button type="primary" :loading="isSaveing" @click="submit"
</el-table-column> >保存</el-button
</sc-form-table> >
</el-form-item> <el-button @click="visible = false">取消</el-button>
</el-form> </el-footer>
</el-main> </el-container>
<el-footer> </el-drawer>
<el-button type="primary" :loading="isSaveing" @click="submit">保存</el-button>
<el-button @click="visible=false">取消</el-button>
</el-footer>
</el-container>
<el-drawer title="过滤项配置" v-model="setFiltersVisible" :size="500" destroy-on-close>
<el-main style="padding:0 20px 20px 20px">
<sc-form-table v-model="selectionFilters" :addTemplate="filtersAddTemplate" drag-sort placeholder="暂无数据">
<el-table-column prop="text" label="名称">
<template #default="scope">
<el-input v-model="scope.row.text" placeholder="请输入名称"></el-input>
</template>
</el-table-column>
<el-table-column prop="value" label="值" width="150">
<template #default="scope">
<el-input v-model="scope.row.value" placeholder="请输入值"></el-input>
</template>
</el-table-column>
</sc-form-table>
</el-main>
</el-drawer>
</el-drawer>
</template> </template>
<script> <script>
export default { export default {
emits: ['success', 'closed'], emits: ["success", "closed"],
data() { data() {
return { return {
loading: false, loading: false,
mode: "add", mode: "add",
titleMap: { titleMap: {
add: '新增', add: "新增",
edit: '编辑' edit: "编辑",
}, show: "查看",
form: {}, },
rules: { form: {},
name: [ rules: {
{required: true, message: '请输入表格名称', trigger: 'blur'} name: [{ required: true, message: "请输入表格名称", trigger: "blur" }],
], code: [{ required: true, message: "请输入唯一标识", trigger: "blur" }],
code: [ },
{required: true, message: '请输入唯一标识', trigger: 'blur'} addTemplate: {
] label: "",
}, prop: "",
addTemplate: { width: "100",
label: '', hide: false,
prop: '', sortable: false,
width: '100', fixed: false,
hide: false, filters: [],
sortable: false, },
fixed: false, visible: false,
filters: [] isSaveing: false,
}, selectionFilters: [],
visible: false, filtersAddTemplate: {
isSaveing: false, text: "",
selectionFilters: [], value: "",
filtersAddTemplate: { },
text: '', setFiltersVisible: false,
value: '' };
}, },
setFiltersVisible: false mounted() {},
} methods: {
}, //
mounted() { open(mode = "add") {
this.mode = mode;
}, this.visible = true;
methods: { return this;
// },
open(mode='add'){ //
this.mode = mode; submit() {
this.visible = true; this.$refs.dialogForm.validate(async (valid) => {
return this; if (valid) {
}, this.isSaveing = true;
// this.$API.hrm.employee.update(this.form.id, this.form).then(res=>{
submit(){ this.isSaveing = false;
this.$refs.dialogForm.validate(async (valid) => { this.visible = false;
if (valid) { this.$emit("success", this.form, this.mode);
this.isSaveing = true; this.$message.success("操作成功");
var res = await this.$API.demo.post.post(this.form); return res
this.isSaveing = false; }).catch(err=>{
if(res.code == 200){ this.isSaveing = false;
this.$emit('success', this.form, this.mode) return err
this.visible = false; })
this.$message.success("操作成功") }
}else{ });
this.$alert(res.message, "提示", {type: 'error'}) },
} //
} setData(data) {
}) // this.loading = true
}, // const params = {
// // id: data.id
setData(data){ // }
// this.loading = true // setTimeout(async ()=>{
// const params = { // var res = await this.$API.system.table.info.get(params)
// id: data.id // this.loading = false
// } // this.form = res.data
// setTimeout(async ()=>{ // },400)
// var res = await this.$API.system.table.info.get(params) Object.assign(this.form, data);
// this.loading = false },
// this.form = res.data //
// },400) setFilters(filters) {
Object.assign(this.form, data) this.selectionFilters = filters;
}, this.setFiltersVisible = true;
// },
setFilters(filters){ },
this.selectionFilters = filters };
this.setFiltersVisible = true
}
}
}
</script> </script>
<style> <style>