作者 小范

账单列表添加新增功能

... ... @@ -2,12 +2,17 @@ import http from "../http";
let baseUrl = 'wlpt-custom-service-charge/bill'
let baseUrl1 = 'wlpt-custom-service-charge/busneeTypeConfig'
let baseUrl2 = 'wlpt-custom-service-charge/currency'
//折扣配置
export const list = (data,params) => {
return http.post(`${baseUrl}/list`,data, params);
};
export const save = params => { return http.post(`${baseUrl}/save`, params); };
export const list = (data,params) => {return http.post(`${baseUrl}/list`,data, params);};
export const add = params => { return http.post(`${baseUrl}/add`, params); };
export const edit = params => { return http.put(`${baseUrl}/edit`, params); };
export const remove = params => { return http.delByParam(`${baseUrl}/remove`, params); };
//获取业务类型
export const get = (data,params) => {return http.get(`${baseUrl1}/list`,data, params);};
//获取计费名称和单位
export const currency = (data,params) => {return http.get(`${baseUrl2}/`,data, params);};
... ...
... ... @@ -4,28 +4,28 @@
<!-- 搜索区域-->
<el-row class="toolbar" style ="height:110px;">
<el-row>
<el-col :span="6">
<el-input v-model="queryModel.billOwnerCompanyCode" prefix-icon="el-icon-search" style="width: 240px"
<el-col :span="5">
<el-input v-model="queryModel.billOwnerCompanyCode" prefix-icon="el-icon-search"
placeholder="客户简码如:BD" clearable>
<template slot="prepend">公司简码</template>
</el-input>
</el-col>
<el-col :span="6">
<el-input v-model="queryModel.billBusinessName" prefix-icon="el-icon-search" style="width: 240px"
<el-col :offset="1" :span="5">
<el-input v-model="queryModel.billBusinessName" prefix-icon="el-icon-search"
placeholder="业务名称" clearable>
<template slot="prepend">业务名称</template>
</el-input>
</el-col>
<el-col :span="6">
<el-input v-model="queryModel.billType" prefix-icon="el-icon-search" style="width: 240px"
<el-col :offset="1" :span="5">
<el-input v-model="queryModel.billType" prefix-icon="el-icon-search"
placeholder="业务类型" clearable>
<template slot="prepend">业务类型</template>
</el-input>
</el-col>
<el-col :span="6">
<el-col :offset="1" :span="5">
<div class="my-text-area">
<div class="el-input-group__prepend prepand">账单状态</div>
<el-select v-model="queryModel.billState" placeholder="账单状态" style="width: 140px" clearable>
<el-select v-model="queryModel.billState" placeholder="账单状态" style="width: 90px" clearable>
<el-option label="未结算" value="000"></el-option>
<el-option label="已结算" value="001"></el-option>
<el-option label="作废" value="111"></el-option>
... ... @@ -33,15 +33,14 @@
</div>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<el-input v-model="queryModel.billWaybiilno" prefix-icon="el-icon-search" style="width: 240px"
<el-col :span="5">
<el-input v-model="queryModel.billWaybiilno" prefix-icon="el-icon-search"
placeholder="单证号" clearable>
<template slot="prepend">单证号码</template>
</el-input>
</el-col>
<el-col :span="12">
<el-col :offset="1" :span="12">
<div class="my-text-area">
<div class="el-input-group__prepend prepand">计费时间</div>
<el-date-picker
... ... @@ -59,12 +58,11 @@
</el-date-picker>
</div>
</el-col>
<el-col :span="6">
<el-col :offset="1" :span="5">
<el-button type="primary" icon="el-icon-search" @click="getList()">
查询
</el-button>
<!-- <el-button type="success" icon="el-icon-edit" size="small" @click="applyAdd()">新增</el-button>-->
<el-button type="success" icon="el-icon-edit" size="small" @click="applyAdd()">新增</el-button>
</el-col>
</el-row>
</el-row>
... ... @@ -177,21 +175,36 @@
</el-pagination>
</el-row>
<el-row>
<el-dialog :title="dialogMap[dialogApply]" :visible.sync="apply_dialog" width="70%" >
<el-dialog :title="dialogMap[dialogApply]" :visible.sync="apply_dialog" width="80%" v-dialog-drag>
<el-form :model="addForm" :rules="rules" ref="addForm" style="margin-top: 40px">
<el-row>
<el-col :span="11">
<el-form-item label=" " :label-width="formLabelWidth" prop="billWaybiilno">
<el-input v-model="addForm.billWaybiilno" autocomplete="off" size="small" style="width: 350px">
<el-input v-model="addForm.billWaybiilno" autocomplete="off">
<template slot="prepend">关联单据/运单号</template>
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-col :span="11">
<el-form-item label=" " :label-width="formLabelWidth" prop="billName">
<el-input v-model="addForm.billName" autocomplete="off" size="small" style="width: 350px">
<template slot="prepend">费用名称</template>
</el-input>
<div class="my-text-area">
<div class="el-input-group__prepend prepand">费用名称</div>
<el-select v-model="addForm.billName"
@click.native="getCurrency"
default-first-option
:loading="loadings" clearable placeholder="请选择" style="width: 225px">
<el-option
v-for="item in billNames"
:key="item.currencysort"
:label="item.currencyDescription"
:value="item.currencysort"
:disabled="item.disabled">
</el-option>
</el-select>
</div>
<!-- <el-input v-model="addForm.billName" autocomplete="off">-->
<!-- <template slot="prepend">费用名称</template>-->
<!-- </el-input>-->
</el-form-item>
</el-col>
</el-row>
... ... @@ -200,7 +213,7 @@
<el-form-item label=" " :label-width="formLabelWidth" prop="billState">
<div class="my-text-area">
<div class="el-input-group__prepend prepand">费用状态</div>
<el-select v-model="addForm.billState" placeholder="请选择费用状态" size="small" style="width: 260px">
<el-select v-model="addForm.billState" placeholder="请选择费用状态" style="width: 225px">
<el-option label="未支付" value="000"></el-option>
<el-option label="已支付" value="001"></el-option>
<el-option label="作废" value="111"></el-option>
... ... @@ -208,11 +221,11 @@
</div>
</el-form-item>
</el-col>
<el-col :span="12">
<el-col :span="11">
<el-form-item label=" " :label-width="formLabelWidth" prop="billPayModel">
<div class="my-text-area">
<div class="el-input-group__prepend prepand">结算方式</div>
<el-select v-model="addForm.billPayModel" placeholder="请选择结算方式" size="small" style="width: 260px">
<el-select v-model="addForm.billPayModel" placeholder="请选择结算方式" style="width: 225px">
<el-option label="现金" value="002"></el-option>
<el-option label="记账" value="000"></el-option>
<el-option label="月结" value="001"></el-option>
... ... @@ -226,17 +239,48 @@
<el-form-item label=" " :label-width="formLabelWidth" prop="billIeType">
<div class="my-text-area">
<div class="el-input-group__prepend prepand">支出/收入</div>
<el-select v-model="addForm.billIeType" placeholder="请选择支付方式" size="small" style="width: 260px">
<el-select v-model="addForm.billIeType" placeholder="请选择支付方式" style="width: 225px">
<el-option label="收入" value="I"></el-option>
<el-option label="支出" value="E"></el-option>
</el-select>
</div>
</el-form-item>
</el-col>
<el-col :span="12">
<el-col :span="11">
<el-form-item label=" " :label-width="formLabelWidth" prop="billBusinessName">
<el-input v-model="addForm.billBusinessName" autocomplete="off" size="small" style="width: 350px">
<template slot="prepend">费用所属业务类型</template>
<div class="my-text-area">
<div class="el-input-group__prepend prepand">业务类型</div>
<el-select v-model="addForm.billBusinessName"
@click.native="getCreden"
default-first-option
:loading="loading" clearable placeholder="请选择" style="width: 225px">
<el-option
v-for="item in businesstypes"
:key="item.busnessType"
:label="item.busnessType"
:value="item.busnessType"
:disabled="item.disabled">
</el-option>
</el-select>
</div>
<!-- <el-input v-model="addForm.billBusinessName" autocomplete="off">-->
<!-- <template slot="prepend">费用所属业务类型</template>-->
<!-- </el-input>-->
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="11">
<el-form-item label=" " :label-width="formLabelWidth" prop="billCosts">
<el-input :disabled="dialogApply === 'update'" v-model="addForm.weight" autocomplete="off">
<template slot="prepend">重量</template>
</el-input>
</el-form-item>
</el-col>
<el-col :span="11">
<el-form-item label=" " :label-width="formLabelWidth" prop="billCostsBefore">
<el-input :disabled="dialogApply === 'update'" v-model="addForm.goodsvol" autocomplete="off">
<template slot="prepend">体积</template>
</el-input>
</el-form-item>
</el-col>
... ... @@ -244,14 +288,14 @@
<el-row>
<el-col :span="11">
<el-form-item label=" " :label-width="formLabelWidth" prop="billCosts">
<el-input v-model="addForm.billCosts" autocomplete="off" size="small" style="width: 350px">
<el-input v-model="addForm.billCosts" autocomplete="off">
<template slot="prepend">最终费用额度</template>
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-col :span="11">
<el-form-item label=" " :label-width="formLabelWidth" prop="billCostsBefore">
<el-input v-model="addForm.billCostsBefore" autocomplete="off" size="small" style="width: 350px">
<el-input v-model="addForm.billCostsBefore" autocomplete="off">
<template slot="prepend">费用优惠前额度</template>
</el-input>
</el-form-item>
... ... @@ -260,27 +304,49 @@
<el-row>
<el-col :span="11">
<el-form-item label=" " :label-width="formLabelWidth" prop="billCostsDiscounts">
<el-input v-model="addForm.billCostsDiscounts" autocomplete="off" size="small" style="width: 350px">
<el-input v-model="addForm.billCostsDiscounts" autocomplete="off">
<template slot="prepend">优惠金额</template>
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-col :span="11">
<el-form-item label=" " :label-width="formLabelWidth" prop="billCurrency">
<el-input v-model="addForm.billCurrency" autocomplete="off" size="small" style="width: 350px">
<template slot="prepend">计费单位</template>
</el-input>
<div class="my-text-area">
<div class="el-input-group__prepend prepand">计费单位</div>
<el-select v-model="addForm.billCurrency"
@click.native="getCurrency"
default-first-option
:loading="loadings" clearable placeholder="请选择" style="width: 225px">
<el-option
v-for="item in billNames"
:key="item.currencyCode"
:label="item.currencyCode"
:value="item.currencyCode"
:disabled="item.disabled">
</el-option>
</el-select>
</div>
<!-- <el-input v-model="addForm.billCurrency" autocomplete="off">-->
<!-- <template slot="prepend">计费单位</template>-->
<!-- </el-input>-->
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="11">
<el-form-item label=" " :label-width="formLabelWidth" prop="billSource">
<el-input v-model="addForm.billSource" autocomplete="off" size="small" style="width: 350px">
<el-input v-model="addForm.billSource" autocomplete="off">
<template slot="prepend">费用产生来源</template>
</el-input>
</el-form-item>
</el-col>
<el-col :span="11">
<el-form-item label=" " :label-width="formLabelWidth" prop="billCosts">
<el-input v-model="addForm.billOwnerCompanyCode" autocomplete="off">
<template slot="prepend">企业简码</template>
</el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
... ... @@ -294,12 +360,16 @@
</template>
<script>
import {list,edit,remove} from '../../api/consigner/check';
import {list,edit,remove,add,get,currency} from '../../api/consigner/check';
export default {
name: "check",
data() {
return {
loading:false,
businesstypes:[],
loadings:false,
billNames:[],
queryInfo: {
// companyId:'',
// busnessType:'',
... ... @@ -340,6 +410,10 @@
billCostsDiscounts:'',
billCurrency: '',
billSource:'',
weight:'',
goodsvol:'',
billOwnerCompanyCode:'',
billCreatUserid:'1'
},
pickerOptions: {
shortcuts: [{
... ... @@ -400,6 +474,49 @@
this.queryModel.billCreatTimeEnd = this.queryDateSearch[1]
}
},
//获取费用名称和单位
getCurrency(){
this.billNames=[];
//let params={};
this.loadings = true;
currency().then(res =>{
console.log(res)
if (res!=null) {
console.log(res.data.data)
setTimeout(() => {
this.loadings = false;
this.billNames=res.data.data;
}, 200);
} else {
this.billNames = [];
}
});
},
//获取业务类型
getCreden(){
this.businesstypes=[];
//let params={};
this.loading = true;
get().then(res =>{
console.log(res)
if (res!=null) {
console.log(res.data.data)
setTimeout(() => {
this.loading = false;
this.businesstypes=res.data.data.list;
// this.businesstypes.value=res.data.data.typeNme;
// this.businesstypes.label=res.data.data.typeDes;
// this.businesstypes.disabled=res.data.data.disabled;
}, 200);
} else {
this.businesstypes = [];
}
});
},
getList() {
const _this = this
list(this.queryModel,this.queryInfo).then((response) => {
... ... @@ -419,44 +536,50 @@
})
},
// 添加对话框,打开事件
// applyAdd() {
// this.addForm = {
// orderAuthorName: '',
// orderAuthorid: '',
// orderCreatTime: '',
// orderOperatorId: '',
// orderRemark: '',
// orderState: '',
// orderTotalAmount:'',
// orderUpdateTime:'',
// orderType:''
// };
// this.dialogApply= 'create';
// this.dis= 'create';
// this.apply_dialog = true;
// },
applyAdd() {
this.addForm = {
billWaybiilno: '',
billName: '',
billState: '',
billPayModel: '',
billIeType: '',
billBusinessName: '',
billCosts:'',
billCostsBefore:'',
billCostsDiscounts:'',
billCurrency: '',
billSource:'',
weight:'',
goodsvol:'',
billOwnerCompanyCode:'',
billCreatUserid:'1'
};
this.dialogApply= 'create';
this.dis= 'create';
this.apply_dialog = true;
},
// 添加功能
// add() {
// this.$refs.addForm.validate(valid => {
// // 未通过,表单预校验
// if (!valid) return;
// save(this.addForm).then((response) => {
// let res = response.data;
// // 添加失败
// if (res.code !== '200') {
// return this.$message.error(res.msg);
// }
// // 添加,成功
// this.$message.success(res.msg);
// // 隐藏对话框
// this.apply_dialog = false;
// // 刷新列表
// this.getList();
// }).catch(error => {
// this.$message.error(error.toString());
// });
// })
// },
add() {
this.$refs.addForm.validate(valid => {
// 未通过,表单预校验
if (!valid) return;
add(this.addForm).then((response) => {
let res = response.data;
// 添加失败
if (res.code !== '200') {
return this.$message.error(res.msg);
}
// 添加,成功
this.$message.success(res.msg);
// 隐藏对话框
this.apply_dialog = false;
// 刷新列表
this.getList();
}).catch(error => {
this.$message.error(error.toString());
});
})
},
// 打开编辑
applyEdit(row) {
this.apply_dialog = true;
... ...