下拉加参数

This commit is contained in:
wangyan 2024-05-23 21:44:11 +08:00
parent 943318d697
commit 97b709112a

View File

@ -1,200 +1,183 @@
<template>
<div class="app-container" style="width:800px;margin:0 auto">
<el-form size="mini" label-width="160px" :rules="rules" ref="ruleForm" :model="formInline">
<el-form
ref="ruleForm"
:rules="rules"
:model="formInline"
size="mini"
label-width="160px"
>
<el-row>
<el-col :span="24">
<el-form-item label="项目编号" prop="xyProjectId">
<el-select
style="width: 100%;"
v-model="formInline.xyProjectId"
clearable
@change="getxoProjectname"
placeholder="项目编号"
class="filter-item"
>
<el-option
v-for="item in xwProjectIdOption"
:key="item.xpId"
:label="item.xpId+'-'+item.xpProName"
:value="item.xpId"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="项目名称" >
<el-input disabled
v-model="formInline.xoProjectname"
placeholder="项目名称"
maxlength="100"
></el-input>
<el-form-item label="项目编号" prop="xyProjectId">
<el-select
v-model="formInline.xyProjectId"
style="width: 100%;"
clearable
placeholder="项目编号"
class="filter-item"
@change="getxoProjectname"
>
<el-option
v-for="item in xwProjectIdOption"
:key="item.xpId"
:label="item.xpId + '-' + item.xpProName"
:value="item.xpId"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="项目名称">
<el-input
v-model="formInline.xoProjectname"
disabled
placeholder="项目名称"
maxlength="100"
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="月份:" prop="date">
<el-date-picker style="width: 100%;"
<el-date-picker
v-model="formInline.date"
style="width: 100%;"
type="month"
value-format="yyyy-MM"
v-model="formInline.date"
placeholder="月份"
></el-date-picker>
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="文件上传:" prop="file">
<div style="display: flex;height: 30px;">
<el-upload
:auto-upload="false"
action="www.baidu.com"
:auto-upload="false"
:on-change="handleSuccess"
>
<el-button type="primary" >上传</el-button>
action="www.baidu.com"
>
<el-button type="primary">上传</el-button>
</el-upload>
</div>
</el-form-item>
</el-col>
</el-row>
<div style="float: right;">
<el-button @click="cancelBtn('ruleForm')"> </el-button>
<el-button type="primary" @click="onSubmit('ruleForm')">保存</el-button>
</div>
<div style="float: right;">
<el-button @click="cancelBtn('ruleForm')"> </el-button>
<el-button type="primary" @click="onSubmit('ruleForm')">保存</el-button>
</div>
</el-form>
</div>
</template>
<script>
import {
xyProjectinfoSelectXm,//
import {
xyProjectinfoSelectXm, //
xyProjectinfoList,
xyCostEntry
} from '@/api/article'
} from "@/api/article";
export default {
data() {
var validateInput = (rule, value, callback) => {
if (value === '' ) {
callback(new Error('没有数据'));
} else {
callback();
}
if (value === "") {
callback(new Error("没有数据"));
} else {
callback();
}
};
return {
xwProjectIdOption :[],
uploadUrl :"www.baidu.com",
headerObj :{
Authorization:"",
xwProjectIdOption: [],
uploadUrl: "www.baidu.com",
headerObj: {
Authorization: ""
},
formInline: {
file : "",
date : "",
xyProjectId:'',
formInline: {
file: "",
date: "",
xyProjectId: ""
},
rules: {
xyProjectId: [{ validator: validateInput, trigger: 'change' }],
date: [ { validator: validateInput, trigger: 'blur' }],
file: [{ validator: validateInput, trigger: 'change' } ],
xyProjectId: [{ validator: validateInput, trigger: "change" }],
date: [{ validator: validateInput, trigger: "blur" }],
file: [{ validator: validateInput, trigger: "change" }]
},
editState : 0,//01
editId :'',//id-xpId
nameOption : [],//
editState: 0, // 01
editId: "", // id-xpId
nameOption: [] //
};
},
mounted() {
this.getxwProjectIdOption()
this.getNameSelect();//
this.getxwProjectIdOption();
this.getNameSelect(); //
},
methods: {
getxoProjectname(val){
if(val){
let obj = this.xwProjectIdOption.find((item)=>{
return item.xpId == val
})
this.formInline.xoProjectname = obj.xpProName
getxoProjectname(val) {
if (val) {
const obj = this.xwProjectIdOption.find(item => {
return item.xpId == val;
});
this.formInline.xoProjectname = obj.xpProName;
} else {
this.formInline.xoProjectname = "";
}
else{
this.formInline.xoProjectname = ''
}
},
getxwProjectIdOption(){
xyProjectinfoList().then(res=>{
getxwProjectIdOption() {
xyProjectinfoList({ page: 0, size: 500 }).then(res => {
// console.log(res);
this.xwProjectIdOption = res.content;
})
});
},
//
getNameSelect(){
xyProjectinfoSelectXm().then(res=>{
console.log(res);
this.nameOption = res
}).catch(err=>{
console.log(err)
})
getNameSelect() {
xyProjectinfoSelectXm()
.then(res => {
console.log(res);
this.nameOption = res;
})
.catch(err => {
console.log(err);
});
},
//
nameChange(val){
//
nameChange(val) {
console.log(val);
if(val !=""){
this.formInline.empName = val.split('-')[0]
this.formInline.jobNum = val.split('-')[1]
}else{
this.formInline.empName = '' ;
this.formInline.jobNum = '' ;
if (val != "") {
this.formInline.empName = val.split("-")[0];
this.formInline.jobNum = val.split("-")[1];
} else {
this.formInline.empName = "";
this.formInline.jobNum = "";
}
},
//
onSubmit(formName) {
this.$refs[formName].validate((valid) => {
this.$refs[formName].validate(valid => {
if (valid) {
let formdata=new FormData();
debugger
console.log(this.formInline.file)
formdata.append("file",this.formInline.file);
formdata.append("date",this.formInline.date);
formdata.append("xyProjectId",this.formInline.xyProjectId);
const formdata = new FormData();
debugger;
console.log(this.formInline.file);
formdata.append("file", this.formInline.file);
formdata.append("date", this.formInline.date);
formdata.append("xyProjectId", this.formInline.xyProjectId);
xyCostEntry(formdata)
.then(res=>{
this.$router.push('/reimbursement/listc')
}).catch(err=>{
console.log(err)
})
.then(res => {
this.$router.push("/reimbursement/listc");
})
.catch(err => {
console.log(err);
});
} else {
console.log('error submit!!');
console.log("error submit!!");
return false;
}
});
},
handleSuccess(file) {
this.formInline.file= file.raw
},
},
this.formInline.file = file.raw;
}
}
};
</script>