343 lines
12 KiB
Vue
343 lines
12 KiB
Vue
|
|
<template>
|
|||
|
|
<div >
|
|||
|
|
<el-row :gutter="0">
|
|||
|
|
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="报价名称" prop="quoteName">
|
|||
|
|
<el-input v-model="form.quoteName" placeholder="请输入报价名称" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="报价编码" prop="quoteCode">
|
|||
|
|
<el-input v-model="form.quoteCode" placeholder="请输入报价编码" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="使用站点代码" prop="useSiteCode">
|
|||
|
|
<el-input v-model="form.useSiteCode" placeholder="请输入使用站点代码" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="使用站点名称" prop="useSite">
|
|||
|
|
<el-input v-model="form.useSite" placeholder="请输入使用站点名称" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="所属线路代码" prop="transLineCode">
|
|||
|
|
<el-input v-model="form.transLineCode" placeholder="请输入所属线路代码" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="所属线路名称" prop="transLine">
|
|||
|
|
<el-input v-model="form.transLine" placeholder="请输入所属线路名称" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="费用类型" prop="feeType">
|
|||
|
|
<el-input v-model="form.feeType" placeholder="请输入费用类型" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="产品类型代码" prop="prodCode">
|
|||
|
|
<el-input v-model="form.prodCode" placeholder="请输入产品类型代码" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="产品类型名称" prop="prodName">
|
|||
|
|
<el-input v-model="form.prodName" placeholder="请输入产品类型名称" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="soon_piece_type" prop="soonPieceType">
|
|||
|
|
<el-input v-model="form.soonPieceType" placeholder="请输入soon_piece_type" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="录入付款类型" prop="recPayType">
|
|||
|
|
<el-input v-model="form.recPayType" placeholder="请输入录入付款类型" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="计费类型" prop="billType">
|
|||
|
|
<el-input v-model="form.billType" placeholder="请输入计费类型" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="其他类型1" prop="otherType1">
|
|||
|
|
<el-input v-model="form.otherType1" placeholder="请输入其他类型1" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="其他类型2" prop="otherType2">
|
|||
|
|
<el-input v-model="form.otherType2" placeholder="请输入其他类型2" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="取重方式" prop="carryType">
|
|||
|
|
<el-input v-model="form.carryType" placeholder="请输入取重方式" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="启用状态" prop="status">
|
|||
|
|
<el-input v-model="form.status" placeholder="请输入启用状态" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="派件区域站点" prop="dispAreaSite">
|
|||
|
|
<el-input v-model="form.dispAreaSite" placeholder="请输入派件区域站点" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="派件区域名称" prop="dispAreaName">
|
|||
|
|
<el-input v-model="form.dispAreaName" placeholder="请输入派件区域名称" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="寄件区域名称" prop="sendAreaName">
|
|||
|
|
<el-input v-model="form.sendAreaName" placeholder="请输入寄件区域名称" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="寄件区域站点列表" prop="sendAreaSite">
|
|||
|
|
<el-input v-model="form.sendAreaSite" placeholder="请输入寄件区域站点列表" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="carries_number" prop="carriesNumber">
|
|||
|
|
<el-input v-model="form.carriesNumber" placeholder="请输入carries_number" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="discards_number" prop="discardsNumber">
|
|||
|
|
<el-input v-model="form.discardsNumber" placeholder="请输入discards_number" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="最低价格" prop="leastPrice">
|
|||
|
|
<el-input v-model="form.leastPrice" placeholder="请输入最低价格" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="价格取值" prop="priceType">
|
|||
|
|
<el-input v-model="form.priceType" placeholder="请输入价格取值" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="开始日期" prop="startDate">
|
|||
|
|
<el-date-picker clearable
|
|||
|
|
v-model="form.startDate"
|
|||
|
|
type="date"
|
|||
|
|
value-format="yyyy-MM-dd"
|
|||
|
|
placeholder="请选择开始日期">
|
|||
|
|
</el-date-picker>
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="结束日期" prop="endDate">
|
|||
|
|
<el-date-picker clearable
|
|||
|
|
v-model="form.endDate"
|
|||
|
|
type="date"
|
|||
|
|
value-format="yyyy-MM-dd"
|
|||
|
|
placeholder="请选择结束日期">
|
|||
|
|
</el-date-picker>
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="优先级" prop="priorityLevel">
|
|||
|
|
<el-input v-model="form.priorityLevel" placeholder="请输入优先级" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="备注" prop="remark">
|
|||
|
|
<el-input v-model="form.remark" placeholder="请输入备注" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
<el-col :span="24">
|
|||
|
|
<el-form-item label="删除标志(0代表存在" prop="delFlag">
|
|||
|
|
<el-input v-model="form.delFlag" placeholder="请输入删除标志(0代表存在" />
|
|||
|
|
</el-form-item>
|
|||
|
|
</el-col>
|
|||
|
|
|
|||
|
|
<el-form-item label="上级字典">
|
|||
|
|
<treeselect
|
|||
|
|
ref="tree"
|
|||
|
|
v-model="form.parentId"
|
|||
|
|
:options="emisQuotePriceOptions"
|
|||
|
|
:normalizer="normalizer"
|
|||
|
|
:default-expand-level="1"
|
|||
|
|
:show-count="true"
|
|||
|
|
placeholder="选择上级"
|
|||
|
|
/>
|
|||
|
|
</el-form-item>
|
|||
|
|
|
|||
|
|
|
|||
|
|
</el-form>
|
|||
|
|
</el-row>
|
|||
|
|
<div style="text-align: center;margin-bottom: 10px;">
|
|||
|
|
<el-button type="primary" @click="submitForm">确 定</el-button>
|
|||
|
|
<el-button @click="cancel">取 消</el-button>
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
</div>
|
|||
|
|
</template>
|
|||
|
|
|
|||
|
|
<script>
|
|||
|
|
import { listEmisQuotePrice, getEmisQuotePrice, delEmisQuotePrice, addEmisQuotePrice, updateEmisQuotePrice } from "@/api/emis/emisQuotePrice";
|
|||
|
|
|
|||
|
|
export default {
|
|||
|
|
name: "emisQuotePriceForm",
|
|||
|
|
props:{
|
|||
|
|
quoteId:undefined
|
|||
|
|
},
|
|||
|
|
components: { },
|
|||
|
|
dicts: [
|
|||
|
|
],
|
|||
|
|
data() {
|
|||
|
|
return {
|
|||
|
|
emisQuotePriceOptions: [],
|
|||
|
|
// 遮罩层
|
|||
|
|
loading: true,
|
|||
|
|
// 表单参数
|
|||
|
|
form: {},
|
|||
|
|
// 表单校验
|
|||
|
|
rules: {
|
|||
|
|
quoteId: [
|
|||
|
|
{ required: true, message: "序号不能为空", trigger: "blur" }
|
|||
|
|
],
|
|||
|
|
quoteName: [
|
|||
|
|
{ required: true, message: "报价名称不能为空", trigger: "blur" }
|
|||
|
|
],
|
|||
|
|
useSiteCode: [
|
|||
|
|
{ required: true, message: "使用站点代码不能为空", trigger: "blur" }
|
|||
|
|
],
|
|||
|
|
useSite: [
|
|||
|
|
{ required: true, message: "使用站点名称不能为空", trigger: "blur" }
|
|||
|
|
],
|
|||
|
|
}
|
|||
|
|
};
|
|||
|
|
},
|
|||
|
|
watch: {
|
|||
|
|
"quoteId": {
|
|||
|
|
handler (newValue, oldValue) {
|
|||
|
|
this.quoteId = newValue;
|
|||
|
|
this.initData();
|
|||
|
|
},
|
|||
|
|
deep: true
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
created() {
|
|||
|
|
this.initData();
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
methods: {
|
|||
|
|
initData() {
|
|||
|
|
this.reset();
|
|||
|
|
if(this.quoteId !=undefined) {
|
|||
|
|
this.loading = true;
|
|||
|
|
getEmisQuotePrice(this.quoteId).then(response => {
|
|||
|
|
this.form = response.data;
|
|||
|
|
this.loading = false;
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
this.getTreeselect();
|
|||
|
|
},
|
|||
|
|
// 取消按钮
|
|||
|
|
cancel() {
|
|||
|
|
this.reset();
|
|||
|
|
this.$emit("on-cancel");
|
|||
|
|
},
|
|||
|
|
// 表单重置
|
|||
|
|
reset() {
|
|||
|
|
this.form = {
|
|||
|
|
quoteId: null,
|
|||
|
|
quoteName: null,
|
|||
|
|
quoteCode: null,
|
|||
|
|
useSiteCode: null,
|
|||
|
|
useSite: null,
|
|||
|
|
transLineCode: null,
|
|||
|
|
transLine: null,
|
|||
|
|
feeType: null,
|
|||
|
|
prodCode: null,
|
|||
|
|
prodName: null,
|
|||
|
|
soonPieceType: null,
|
|||
|
|
recPayType: null,
|
|||
|
|
billType: null,
|
|||
|
|
otherType1: null,
|
|||
|
|
otherType2: null,
|
|||
|
|
carryType: null,
|
|||
|
|
status: null,
|
|||
|
|
dispAreaId: null,
|
|||
|
|
dispAreaSite: null,
|
|||
|
|
dispAreaName: null,
|
|||
|
|
dispAreaSiteId: null,
|
|||
|
|
sendAreaId: null,
|
|||
|
|
sendAreaName: null,
|
|||
|
|
sendAreaSite: null,
|
|||
|
|
sendAreaSiteId: null,
|
|||
|
|
carriesNumber: null,
|
|||
|
|
discardsNumber: null,
|
|||
|
|
leastPrice: null,
|
|||
|
|
priceType: null,
|
|||
|
|
startDate: null,
|
|||
|
|
endDate: null,
|
|||
|
|
priorityLevel: null,
|
|||
|
|
remark: null,
|
|||
|
|
tenantId: null,
|
|||
|
|
delFlag: null,
|
|||
|
|
createBy: null,
|
|||
|
|
createTime: null,
|
|||
|
|
updateBy: null,
|
|||
|
|
updateTime: null,
|
|||
|
|
createSite: null,
|
|||
|
|
updateSite: null
|
|||
|
|
};
|
|||
|
|
this.resetForm("form");
|
|||
|
|
},
|
|||
|
|
/** 提交按钮 */
|
|||
|
|
submitForm() {
|
|||
|
|
this.$refs["form"].validate(valid => {
|
|||
|
|
if (valid) {
|
|||
|
|
if (this.form.quoteId != null) {
|
|||
|
|
updateEmisQuotePrice(this.form).then(response => {
|
|||
|
|
this.$modal.msgSuccess("修改成功");
|
|||
|
|
this.$emit("on-changed");
|
|||
|
|
});
|
|||
|
|
} else {
|
|||
|
|
addEmisQuotePrice(this.form).then(response => {
|
|||
|
|
this.$modal.msgSuccess("修改成功");
|
|||
|
|
this.$emit("on-changed");
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
},
|
|||
|
|
/** 转换菜单数据结构 */
|
|||
|
|
normalizer(node) {
|
|||
|
|
if (node.children && !node.children.length) {
|
|||
|
|
delete node.children;
|
|||
|
|
}
|
|||
|
|
return {
|
|||
|
|
id: node.quoteId,
|
|||
|
|
label: node.quoteIdName,
|
|||
|
|
children: node.children
|
|||
|
|
};
|
|||
|
|
},
|
|||
|
|
/** 查询菜单下拉树结构 */
|
|||
|
|
getTreeselect() {
|
|||
|
|
const queryParams = {}
|
|||
|
|
listEmisQuotePrice(queryParams).then(response => {
|
|||
|
|
this.emisQuotePriceOptions = [];
|
|||
|
|
const rootItem = { quoteIdId: 0, emisQuotePriceName: '-', children: [] };
|
|||
|
|
rootItem.children = this.handleTree(response.data, "quoteId");
|
|||
|
|
this.emisQuotePriceOptions.push(rootItem);
|
|||
|
|
|
|||
|
|
if(this.parentId != undefined) {
|
|||
|
|
this.form.parentId = this.parentId;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
});
|
|||
|
|
},
|
|||
|
|
}
|
|||
|
|
};
|
|||
|
|
</script>
|