6 changed files with 0 additions and 1852 deletions
@ -1,539 +0,0 @@ |
|||
<template> |
|||
<div class="headInfo"> |
|||
<!--标题按钮部分开始--> |
|||
<div class="tab-headerg webtop"> |
|||
<!--标题--> |
|||
<div>{{ viewTitle }}</div> |
|||
<!--start 添加修改按钮--> |
|||
<div> |
|||
<el-button type="primary" size="small" :disabled="submitdisabled" @click="dialogStatus === 'add' ? saveAdd() : saveEdit()">保存</el-button> |
|||
<el-button type="info" size="small" @click="handleReturn()">返回</el-button> |
|||
</div> |
|||
<!--end 添加修改按钮--> |
|||
<!--end 详情按钮--> |
|||
</div> |
|||
<!--标题按钮部分结束--> |
|||
<!--Start 新增修改部分--> |
|||
<div class="listconadd"> |
|||
<el-form ref="form_obj" :model="formobj" :rules="rules" label-position="top" label-width="300px" class="formadd"> |
|||
<div class="title" style="display: flex;align-items: center;justify-content: space-between;height:80px"> |
|||
<div>上装询价单</div> |
|||
</div> |
|||
<el-row> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">车辆功能</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="trightb"> |
|||
<el-form-item prop="topName"> |
|||
<el-select |
|||
v-model="formobj.vehicleFunction" |
|||
@change="changeVehicleFunction" |
|||
style="width: 100%" |
|||
filterable |
|||
placeholder="请选择" |
|||
> |
|||
<el-option |
|||
v-for="item in vehicleFunction_list" |
|||
:key="item.dictKey" |
|||
:label="item.dictValue" |
|||
:value="item.dictKey" |
|||
> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">上装名称</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="12" class="trightb"> |
|||
<el-form-item prop="topName"> |
|||
<el-select |
|||
v-model="formobj.topName" |
|||
@change="changeTopName" |
|||
style="width: 30%" |
|||
filterable |
|||
placeholder="请选择" |
|||
> |
|||
<el-option |
|||
v-for="item in topName_list" |
|||
:key="item.dictKey" |
|||
:label="item.dictValue" |
|||
:value="item.dictKey" |
|||
> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
<el-row> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">委改方式</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="trightb"> |
|||
<el-form-item prop="refitMethod"> |
|||
<el-input |
|||
v-model="formobj.refitMethod" |
|||
placeholder="委改方式" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">委改厂</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="12" class="trightb"> |
|||
<el-form-item prop="refitFactory"> |
|||
<el-input |
|||
v-model="formobj.refitFactory" |
|||
placeholder="委改厂" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
<el-row> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">外廓尺寸</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="trightb"> |
|||
<el-form-item prop="overallDimension"> |
|||
<el-input |
|||
v-model="formobj.overallDimension" |
|||
placeholder="外廓尺寸" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">板材材质</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="trightb"> |
|||
<el-form-item prop="plateMaterial"> |
|||
<el-input |
|||
v-model="formobj.plateMaterial" |
|||
placeholder="板材材质" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">板材厚度</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="trightb"> |
|||
<el-form-item prop="plateThickness"> |
|||
<el-input v-model="formobj.plateThickness" placeholder="板材厚度" class="addinputw-copy" clearable/> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
<el-row> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">公告型号</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="20" class="trightb"> |
|||
<el-form-item prop="announcementModel"> |
|||
<el-input |
|||
v-model="formobj.announcementModel" |
|||
placeholder="公告型号" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
<el-row> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item prop="remarks" |
|||
><span slot="label">更多配置</span></el-form-item |
|||
> |
|||
</el-col> |
|||
<el-col :span="20" class="trightb"> |
|||
<el-form-item prop="otherConfig"> |
|||
<el-input |
|||
v-model="formobj.otherConfig" |
|||
placeholder="其他配置" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
<div class="title" style="display: flex;align-items: center;justify-content: space-between;height:80px"> |
|||
<div>上装报价</div> |
|||
</div> |
|||
<el-row> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">车辆功能</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="trightb"> |
|||
<el-form-item prop="topName"> |
|||
<el-select |
|||
v-model="formobj.vehicleFunction" |
|||
@change="changeVehicleFunction" |
|||
style="width: 100%" |
|||
filterable |
|||
placeholder="请选择" |
|||
> |
|||
<el-option |
|||
v-for="item in vehicleFunction_list" |
|||
:key="item.dictKey" |
|||
:label="item.dictValue" |
|||
:value="item.dictKey" |
|||
> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">上装名称</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="12" class="trightb"> |
|||
<el-form-item prop="topName"> |
|||
<el-select |
|||
v-model="formobj.topName" |
|||
@change="changeTopName" |
|||
style="width: 30%" |
|||
filterable |
|||
placeholder="请选择" |
|||
> |
|||
<el-option |
|||
v-for="item in topName_list" |
|||
:key="item.dictKey" |
|||
:label="item.dictValue" |
|||
:value="item.dictKey" |
|||
> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
<el-row> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">委改方式</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="trightb"> |
|||
<el-form-item prop="refitMethod"> |
|||
<el-input |
|||
v-model="formobj.refitMethod" |
|||
placeholder="委改方式" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">委改厂</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="12" class="trightb"> |
|||
<el-form-item prop="refitFactory"> |
|||
<el-input |
|||
v-model="formobj.refitFactory" |
|||
placeholder="委改厂" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
<el-row> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">外廓尺寸</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="trightb"> |
|||
<el-form-item prop="overallDimension"> |
|||
<el-input |
|||
v-model="formobj.overallDimension" |
|||
placeholder="外廓尺寸" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">板材材质</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="trightb"> |
|||
<el-form-item prop="plateMaterial"> |
|||
<el-input |
|||
v-model="formobj.plateMaterial" |
|||
placeholder="板材材质" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">板材厚度</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="trightb"> |
|||
<el-form-item prop="plateThickness"> |
|||
<el-input v-model="formobj.plateThickness" placeholder="板材厚度" class="addinputw-copy" clearable/> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
<el-row> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">公告型号</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="20" class="trightb"> |
|||
<el-form-item prop="announcementModel"> |
|||
<el-input |
|||
v-model="formobj.announcementModel" |
|||
placeholder="公告型号" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
<el-row> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">厂家结算价</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="trightb"> |
|||
<el-form-item prop="settlementPrice"> |
|||
<el-input |
|||
v-model="formobj.settlementPrice" |
|||
placeholder="厂家结算价" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">销售指导价</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="trightb"> |
|||
<el-form-item prop="guidePrice"> |
|||
<el-input |
|||
v-model="formobj.guidePrice" |
|||
placeholder="销售指导价" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">价格有效期</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="trightb"> |
|||
<el-form-item prop="priceValidity"> |
|||
<el-date-picker |
|||
value-format="yyyy-MM-dd" |
|||
v-model="formobj.priceValidity" |
|||
clearable |
|||
style="width: 100%" |
|||
type="date" |
|||
placeholder="请选择" |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
<el-row> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item prop="remarks" |
|||
><span slot="label">更多配置</span></el-form-item |
|||
> |
|||
</el-col> |
|||
<el-col :span="20" class="trightb"> |
|||
<el-form-item prop="otherConfig"> |
|||
<el-input |
|||
v-model="formobj.otherConfig" |
|||
placeholder="其他配置" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
</el-form> |
|||
</div> |
|||
<!--End 添加修改部分--> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
import req from "@/api/shangzhuang/shangzhuangdaibaojia"; |
|||
|
|||
export default { |
|||
name: "ShangZhuangDaiBaoJiaAdd", |
|||
data() { |
|||
return { |
|||
viewTitle: "", |
|||
dialogStatus: "add", |
|||
topName_list: [], |
|||
vehicleFunction_list: [], |
|||
formobj: { |
|||
sid: "", |
|||
vehicleFunction: "", |
|||
vehicleFunctionKey: "", |
|||
topName: "", |
|||
topNameKey: "", |
|||
refitPrice: "", |
|||
announcementModel: "", |
|||
overallDimension: "", |
|||
plateMaterial: "", |
|||
plateThickness: "", |
|||
refitMethod: "", |
|||
refitFactory: "", |
|||
settlementPrice: "", |
|||
guidePrice: "", |
|||
priceValidity: "", |
|||
otherConfig: "", |
|||
}, |
|||
rules: {}, |
|||
submitdisabled: false, |
|||
}; |
|||
}, |
|||
created() { |
|||
this.DataDictionary(); |
|||
}, |
|||
methods: { |
|||
DataDictionary() { |
|||
//上装名称 |
|||
req.pullDown({ type: "topName" }).then((res) => { |
|||
if (res.code === "200") { |
|||
this.topName_list = res.data; |
|||
} |
|||
}); |
|||
//车辆功能 |
|||
req.pullDown({ type: "vehicleFunction" }).then((res) => { |
|||
if (res.code === "200") { |
|||
this.vehicleFunction_list = res.data; |
|||
} |
|||
}); |
|||
}, |
|||
changeTopName(value) { |
|||
let bb = null; |
|||
this.topName_list.forEach((e) => { |
|||
if (e.dictKey == value) { |
|||
bb = { |
|||
name: e.dictValue, |
|||
value: e.dictKey, |
|||
}; |
|||
} |
|||
}); |
|||
this.formobj.topName = bb.name; |
|||
this.formobj.topNameKey = bb.value; |
|||
}, |
|||
changeVehicleFunction(value) { |
|||
let bb = null; |
|||
this.vehicleFunction_list.forEach((e) => { |
|||
if (e.dictKey == value) { |
|||
bb = { |
|||
name: e.dictValue, |
|||
value: e.dictKey, |
|||
}; |
|||
} |
|||
}); |
|||
this.formobj.vehicleFunction = bb.name; |
|||
this.formobj.vehicleFunctionKey = bb.value; |
|||
}, |
|||
handleReturn(isreload) { |
|||
if (isreload === "true") this.$emit("reloadlist"); |
|||
this.formobj = {}; |
|||
this.$refs["form_obj"].resetFields(); |
|||
this.$emit("doback"); |
|||
}, |
|||
showAdd() { |
|||
this.$nextTick(() => { |
|||
this.$refs["form_obj"].clearValidate(); |
|||
}); |
|||
this.dialogStatus = "add"; |
|||
this.viewTitle = "【新增】上装"; |
|||
}, |
|||
showEdit(row) { |
|||
this.$nextTick(() => { |
|||
this.$refs["form_obj"].clearValidate(); |
|||
}); |
|||
this.dialogStatus = "edit"; |
|||
this.viewTitle = "【编辑】上装"; |
|||
const _this = this; |
|||
req |
|||
.fetchBySid(row.sid) |
|||
.then((resp) => { |
|||
const vdata = resp.data; |
|||
this.formobj = vdata; |
|||
console.log(this.formobj, 123); |
|||
}) |
|||
.catch((e) => { |
|||
this.formobj = row; |
|||
}); |
|||
}, |
|||
saveAdd() { |
|||
const _this = this; |
|||
this.$refs["form_obj"].validate((valid) => { |
|||
if (valid) { |
|||
this.submitdisabled = true; |
|||
req |
|||
.saveAdd(this.formobj) |
|||
.then((resp) => { |
|||
this.submitdisabled = false; |
|||
_this.$message({ |
|||
showClose: true, |
|||
type: "success", |
|||
message: resp.msg, |
|||
}); |
|||
_this.handleReturn("true"); |
|||
}) |
|||
.catch(() => { |
|||
this.submitdisabled = false; |
|||
}); |
|||
} else { |
|||
return false; |
|||
} |
|||
}); |
|||
}, |
|||
saveEdit() { |
|||
const _this = this; |
|||
this.$refs["form_obj"].validate((valid) => { |
|||
if (valid) { |
|||
this.submitdisabled = true; |
|||
req |
|||
.saveEdit(this.formobj, this.formobj.sid) |
|||
.then((resp) => { |
|||
this.submitdisabled = false; |
|||
_this.$message({ |
|||
showClose: true, |
|||
type: "success", |
|||
message: resp.msg, |
|||
}); |
|||
_this.handleReturn("true"); |
|||
}) |
|||
.catch(() => { |
|||
this.submitdisabled = false; |
|||
}); |
|||
} else { |
|||
return false; |
|||
} |
|||
}); |
|||
}, |
|||
}, |
|||
}; |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.headInfo { |
|||
margin-left: -14px; |
|||
margin-right: -14px; |
|||
} |
|||
.formadd { |
|||
padding: 0px; |
|||
} |
|||
|
|||
.tleftb { |
|||
text-align: right; |
|||
} |
|||
|
|||
.tab-headerg { |
|||
height: 35px; |
|||
background-color: #edf1f7; |
|||
padding: 20px 20px; |
|||
} |
|||
addinputw-copy { |
|||
width: 100%; |
|||
} |
|||
</style> |
@ -1,103 +0,0 @@ |
|||
<template> |
|||
<div class="headInfo"> |
|||
<!--标题按钮部分开始--> |
|||
<div class="tab-headerg webtop"> |
|||
<!--标题--> |
|||
<div>物料信息</div> |
|||
<!--start 详情按钮--> |
|||
<div><el-button itype="info" size="small" @click="handleReturn()">返回</el-button></div> |
|||
<!--end 详情按钮--> |
|||
</div> |
|||
<!--标题按钮部分结束--> |
|||
<div class="listconadd"> |
|||
<el-form |
|||
ref="dataForm" |
|||
label-position="right" |
|||
label-width="190px" |
|||
class="forminfo"> |
|||
<el-row> |
|||
<el-col :span="4" class="trightb">车辆功能</el-col> |
|||
<el-col :span="4" class="tleftb">{{ formobj.vehicleFunction }}</el-col> |
|||
<el-col :span="4" class="trightb">上装名称</el-col> |
|||
<el-col :span="12" class="tleftb">{{ formobj.topName }}</el-col> |
|||
</el-row> |
|||
<el-row> |
|||
<el-col :span="4" class="trightb">委改方式</el-col> |
|||
<el-col :span="4" class="tleftb">{{ formobj.refitMethod }}</el-col> |
|||
<el-col :span="4" class="trightb">委改厂</el-col> |
|||
<el-col :span="12" class="tleftb">{{ formobj.refitFactory }}</el-col> |
|||
</el-row> |
|||
<el-row> |
|||
<el-col :span="4" class="trightb">外廓尺寸</el-col> |
|||
<el-col :span="4" class="tleftb">{{ formobj.overallDimension }}</el-col> |
|||
<el-col :span="4" class="trightb">板材材质</el-col> |
|||
<el-col :span="4" class="tleftb">{{ formobj.plateMaterial }}</el-col> |
|||
<el-col :span="4" class="trightb">板材厚度</el-col> |
|||
<el-col :span="4" class="tleftb">{{ formobj.plateThickness }}</el-col> |
|||
</el-row> |
|||
<el-row> |
|||
<el-col :span="4" class="trightb">公告型号</el-col> |
|||
<el-col :span="20" class="tleftb">{{ formobj.announcementModel }}</el-col> |
|||
</el-row> |
|||
<el-row> |
|||
<el-col :span="4" class="trightb">厂家结算价</el-col> |
|||
<el-col :span="4" class="tleftb">{{ formobj.settlementPrice }}</el-col> |
|||
<el-col :span="4" class="trightb">销售指导价</el-col> |
|||
<el-col :span="4" class="tleftb">{{ formobj.guidePrice }}</el-col> |
|||
<el-col :span="4" class="trightb">价格有效期</el-col> |
|||
<el-col :span="4" class="tleftb">{{ formobj.priceValidity }}</el-col> |
|||
</el-row> |
|||
<el-row> |
|||
<el-col :span="4" class="trightb">更多配置</el-col> |
|||
<el-col :span="20" class="tleftb">{{ formobj.otherConfig }}</el-col> |
|||
</el-row> |
|||
</el-form> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
import req from "@/api/shangzhuang/shangzhuangdaibaojia"; |
|||
export default { |
|||
name: 'ShangZhuangDaiBaoJiaInfo', |
|||
data() { |
|||
return { |
|||
formobj: {} |
|||
} |
|||
}, |
|||
methods: { |
|||
handleReturn() { |
|||
this.formobj = {} |
|||
this.$emit('doback') |
|||
}, |
|||
showInfo(row) { |
|||
// this.formobj = row |
|||
req.fetchBySid(row.sid).then((resp) => { |
|||
this.formobj = resp.data; |
|||
console.log(this.formobj, 123); |
|||
}).catch((e) => { |
|||
this.formobj = row; |
|||
}); |
|||
console.log('这里是详情回显',row) |
|||
} |
|||
} |
|||
} |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.headInfo{ |
|||
margin-left: -14px; |
|||
margin-right: -14px; |
|||
} |
|||
.formadd{ |
|||
padding: 0px; |
|||
} |
|||
.tleftb{ |
|||
text-align: left; |
|||
} |
|||
.tab-headerg{ |
|||
height: 35px; |
|||
background-color: #EDF1F7; |
|||
padding: 20px 20px; |
|||
} |
|||
</style> |
@ -1,427 +0,0 @@ |
|||
|
|||
<template> |
|||
<div class="app-container-Update"> |
|||
<div v-show="viewState == 1"> |
|||
<div class="operate"> |
|||
<div class="tit">上装待报价列表</div> |
|||
<el-button class="btnColse" size="small" icon="el-icon-close" @click="Colse">关闭</el-button> |
|||
</div> |
|||
<el-tabs v-model="activeName" @tab-click="handleClick" type="card"> |
|||
<el-tab-pane label="上装列表" name="first"></el-tab-pane> |
|||
<el-tab-pane label="待报价列表" name="second"></el-tab-pane> |
|||
</el-tabs> |
|||
<div class="searchcon"> |
|||
<el-button size="small" class="searchbtn" @click="isSearchShow = !isSearchShow">{{ isSearchShow ? '隐藏查询条件' : |
|||
'显示查询条件' }} |
|||
</el-button> |
|||
<div v-show="isSearchShow" class="search"> |
|||
<el-form :inline="true" class="tab-header"> |
|||
<el-row> |
|||
<el-form-item label="车辆功能"> |
|||
<el-select v-model="queryParams.params.vehicleFunction" @change='changeVehicleFunction' filterable |
|||
placeholder="请选择"> |
|||
<el-option v-for="item in vehicleFunction_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
<el-form-item label="委改方式"> |
|||
<el-input v-model="queryParams.params.refitMethod" placeholder="请输入委改方式" clearable/> |
|||
</el-form-item> |
|||
<el-form-item label="委改厂"> |
|||
<el-input v-model="queryParams.params.refitFactory" placeholder="请输入委改厂" clearable/> |
|||
</el-form-item> |
|||
<el-form-item label="上装名称"> |
|||
<!-- <el-input v-model="queryParams.params.mNum" placeholder="请输入上装名称" clearable/> --> |
|||
<el-select v-model="queryParams.params.topName" @change='changeTopName' filterable |
|||
placeholder="请选择"> |
|||
<el-option v-for="item in topName_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
<el-form-item label="外廓尺寸"> |
|||
<el-input v-model="queryParams.params.overallDimension" placeholder="请输入外廓尺寸" clearable/> |
|||
</el-form-item> |
|||
</el-row> |
|||
<el-divider/> |
|||
<div class="btn" style="text-align: center;"> |
|||
<el-button type="primary" @click="dosearch">查询</el-button> |
|||
<el-button type="primary" @click="resetQuery">重置</el-button> |
|||
</div> |
|||
</el-form> |
|||
</div> |
|||
</div> |
|||
<!--Start 项目列表头部--> |
|||
<div class="listtop"> |
|||
<div class="tit">上装待报价列表</div> |
|||
<pageye v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current" :limit.sync="queryParams.size" class="pagination" @pagination="loadList"/> |
|||
</div> |
|||
<!--End 项目列表头部--> |
|||
<!--Start 项目列表--> |
|||
<div class="listcon"> |
|||
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%" |
|||
@selection-change="handleSelectionChange"> |
|||
<el-table-column width="50px" type="selection" align="center"/> |
|||
<el-table-column width="80px" label="序号" type="index" :index="indexMethod" align="center"/> |
|||
<el-table-column label="操作" width="150px" align="center"> |
|||
<template slot-scope="scope"> |
|||
<el-button @click="toAdd(scope.row)" type="primary" size="small">报价</el-button> |
|||
<el-button @click="toInfo(scope.row)" type="primary" size="small">查看</el-button> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column prop="vehicleFunction" label="车辆功能" align="center"/> |
|||
<el-table-column prop="topName" label="上装名称" align="center"/> |
|||
<el-table-column prop="refitMethod" label="委改方式" align="center"/> |
|||
<el-table-column prop="refitFactory" label="委改厂" align="center"/> |
|||
<el-table-column prop="announcementModel" label="公告型号" align="center"/> |
|||
<el-table-column prop="overallDimension" label="外廓尺寸" align="center"/> |
|||
<el-table-column prop="plateMaterial" label="板材材质" align="center"/> |
|||
<el-table-column prop="plateThickness" label="板材厚度" align="center"/> |
|||
<el-table-column prop="settlementPrice" label="询价人" align="center"/> |
|||
<el-table-column prop="guidePrice" label="联系电话" align="center"/> |
|||
<el-table-column prop="priceValidity" label="询价日期" align="center"/> |
|||
</el-table> |
|||
</div> |
|||
<!--End 项目列表--> |
|||
<div class="pages"> |
|||
<div class="tit"/> |
|||
<!-- 翻页 --> |
|||
<pagination |
|||
v-show="dataList.length > 0" |
|||
:total="queryParams.total" |
|||
:page.sync="queryParams.current" |
|||
:limit.sync="queryParams.size" |
|||
class="pagination" |
|||
@pagination="loadList" |
|||
/> |
|||
</div> |
|||
</div> |
|||
<!--End 查询和其列表部分--> |
|||
<!--新增修改部分组件--> |
|||
<shangzhuangdaibaojiaAdd v-show="viewState == 2 || viewState == 3" ref="divAdd" @doback="resetState" @reloadlist="loadList"/> |
|||
<!--详情部分组件--> |
|||
<shangzhuangdaibaojiaInfo v-show="viewState == 4" ref="divInfo" @doback="resetState"/> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
import req from '@/api/shangzhuang/shangzhuangdaibaojia' |
|||
import ButtonBar from '@/components/ButtonBar' |
|||
import Pagination from '@/components/pagination' |
|||
import pageye from '@/components/pagination/pageye' |
|||
import shangzhuangdaibaojiaAdd from './shangzhuangdaibaojiaAdd' |
|||
import shangzhuangdaibaojiaInfo from './shangzhuangdaibaojiaInfo' |
|||
export default { |
|||
name: 'ShangZhuangDaiBaoJiaGuanLi', |
|||
components: { |
|||
ButtonBar, |
|||
Pagination, |
|||
pageye, |
|||
shangzhuangdaibaojiaAdd, |
|||
shangzhuangdaibaojiaInfo, |
|||
}, |
|||
data() { |
|||
return { |
|||
btndisabled: false, |
|||
viewState: 1, // 1、列表 2、添加 3、修改 4、查看 |
|||
isSearchShow: false, |
|||
tableLoading: false, |
|||
activeName:'second', |
|||
dataList: [], |
|||
topName_list:[], |
|||
vehicleFunction_list:[], |
|||
queryParams: { |
|||
current: 1, |
|||
size: 10, |
|||
total: 10, |
|||
params: { |
|||
vehicleFunction:'', |
|||
vehicleFunctionKey:'', |
|||
refitMethod:'', |
|||
refitFactory:'', |
|||
topName:'', |
|||
topNameKey:'', |
|||
overallDimension:'' |
|||
} |
|||
}, |
|||
multipleSelection: [] |
|||
} |
|||
}, |
|||
created() { |
|||
this.loadList() |
|||
this.DataDictionary() |
|||
}, |
|||
methods: { |
|||
DataDictionary(){ |
|||
//上装名称 |
|||
|
|||
req.pullDown({type:'topName'}).then((res)=>{ |
|||
if(res.code === '200'){ |
|||
this.topName_list=res.data |
|||
} |
|||
}) |
|||
//车辆功能 |
|||
req.pullDown({type:'vehicleFunction'}).then((res)=>{ |
|||
if(res.code === '200'){ |
|||
this.vehicleFunction_list=res.data |
|||
} |
|||
}) |
|||
}, |
|||
changeTopName(value){ |
|||
let bb=null |
|||
this.topName_list.forEach((e)=>{ |
|||
if (e.dictKey == value) { |
|||
bb = { |
|||
name: e.dictValue, |
|||
value: e.dictKey |
|||
} |
|||
} |
|||
}) |
|||
this.queryParams.params.topName=bb.name |
|||
this.queryParams.params.topNameKey=bb.value |
|||
}, |
|||
changeVehicleFunction(value){ |
|||
let bb=null |
|||
this.vehicleFunction_list.forEach((e)=>{ |
|||
if (e.dictKey == value) { |
|||
bb = { |
|||
name: e.dictValue, |
|||
value: e.dictKey |
|||
} |
|||
} |
|||
}) |
|||
this.queryParams.params.vehicleFunction=bb.name |
|||
this.queryParams.params.vehicleFunctionKey=bb.value |
|||
}, |
|||
resetState() { |
|||
this.viewState = 1 |
|||
this.queryParams = { |
|||
current: 1, |
|||
size: 10, |
|||
total: 0, |
|||
params: { |
|||
vehicleFunction:'', |
|||
vehicleFunctionKey:'', |
|||
refitMethod:'', |
|||
refitFactory:'', |
|||
topName:'', |
|||
topNameKey:'', |
|||
overallDimension:'' |
|||
} |
|||
} |
|||
this.loadList() |
|||
}, |
|||
btnHandle(btnKey) { |
|||
console.log('XXXXXXXXXXXXXXX ' + btnKey) |
|||
switch (btnKey) { |
|||
case 'toAdd': |
|||
this.toAdd() |
|||
break |
|||
case 'toEdit': |
|||
this.toEdit() |
|||
break |
|||
case 'doSubmit': |
|||
this.doSubmit() |
|||
break |
|||
case 'doDel': |
|||
this.doDel() |
|||
break |
|||
case 'doImport': |
|||
this.doImport() |
|||
break |
|||
case 'doExport': |
|||
this.doExport() |
|||
break |
|||
default: |
|||
break |
|||
} |
|||
}, |
|||
handleClick(tab,event){ |
|||
if(tab.name=='first'){ |
|||
this.Colse() |
|||
} |
|||
}, |
|||
Colse(){ |
|||
this.$emit('doback') |
|||
}, |
|||
toAdd(row) { |
|||
this.viewState = 2 |
|||
this.$refs['divAdd'].showAdd() |
|||
}, |
|||
toEdit() { |
|||
if (this.multipleSelection.length === 0) { |
|||
this.$message({showClose: true, type: 'error', message: '请选择一条记录进行编辑'}) |
|||
return |
|||
} |
|||
if (this.multipleSelection.length > 1) { |
|||
this.$message({showClose: true, type: 'error', message: '只能选择一条记录进行编辑'}) |
|||
return |
|||
} |
|||
this.viewState = 3 |
|||
const row = this.multipleSelection[0] |
|||
this.$refs['divAdd'].showEdit(row) |
|||
}, |
|||
doSubmit(row) { |
|||
// 提交的代码 |
|||
this.btndisabled = true |
|||
req.doSubmit(this.queryParams.params).then(resp => { |
|||
this.btndisabled = false |
|||
}).catch(() => { |
|||
this.btndisabled = false |
|||
}) |
|||
}, |
|||
doDel(row) { |
|||
if (this.multipleSelection.length === 0) { |
|||
this.$message({showClose: true, type: 'error', message: '请选择至少一条记录进行删除操作'}) |
|||
return |
|||
} |
|||
const _this = this |
|||
const sids = [] |
|||
this.multipleSelection.forEach(row => { |
|||
sids.push(row.sid) |
|||
}) |
|||
const tip = '请确认是否删除所选 ' + this.multipleSelection.length + ' 条记录?' |
|||
this.$confirm(tip, '提示', { |
|||
confirmButtonText: '确定', |
|||
cancelButtonText: '取消', |
|||
type: 'warning' |
|||
}).then(() => { |
|||
const loading = this.$loading({ |
|||
lock: true, |
|||
text: 'Loading', |
|||
spinner: 'el-icon-loading', |
|||
background: 'rgba(0, 0, 0, 0.7)' |
|||
}) |
|||
req.delBySids(sids).then(resp => { |
|||
loading.close() |
|||
_this.$message({type: 'success', message: resp.msg, showClose: true}) |
|||
_this.loadList() |
|||
}).catch(e => { |
|||
loading.close() |
|||
}) |
|||
}).catch(() => { |
|||
}) |
|||
}, |
|||
doImport(row) { |
|||
// 导入的代码 |
|||
req.importExcel(this.queryParams.params).then(resp => { |
|||
console.log(resp) |
|||
}).catch(() => { |
|||
}) |
|||
}, |
|||
doExport(row) { |
|||
// 导出的代码 |
|||
const sids = [] |
|||
this.multipleSelection.forEach(row => { |
|||
sids.push(row.sid) |
|||
}) |
|||
this.queryParams.params.sids = sids |
|||
req.exportExcel(this.queryParams.params).then(resp => { |
|||
var map = resp.data |
|||
const fileName = map.filename // 导出文件名 |
|||
// // 对于<a>标签,只有 Firefox 和 Chrome(内核) 支持 download 属性 |
|||
// // IE10以上支持blob但是依然不支持download |
|||
const link = document.createElement('a') // 创建a标签 |
|||
link.download = fileName // a标签添加属性 |
|||
link.style.display = 'none' |
|||
link.href = map.downurl |
|||
document.body.appendChild(link) |
|||
link.click() // 执行下载 |
|||
URL.revokeObjectURL(link.href) // 释放url |
|||
document.body.removeChild(link) // 释放标签 |
|||
}).catch(() => { |
|||
}) |
|||
}, |
|||
dosearch() { |
|||
this.queryParams.current=1 |
|||
this.loadList() |
|||
}, |
|||
resetQuery() { |
|||
this.queryParams = { |
|||
current: 1, |
|||
size: 10, |
|||
total: 0, |
|||
params: { |
|||
vehicleFunction:'', |
|||
vehicleFunctionKey:'', |
|||
refitMethod:'', |
|||
refitFactory:'', |
|||
topName:'', |
|||
topNameKey:'', |
|||
overallDimension:'' |
|||
} |
|||
} |
|||
this.loadList() |
|||
}, |
|||
loadList() { |
|||
const _this = this |
|||
this.activeName='second' |
|||
console.log(132456789) |
|||
this.tableLoading = true |
|||
req.listPage(this.queryParams).then(resp => { |
|||
_this.tableLoading = false |
|||
const data = resp.data |
|||
_this.queryParams.total = data.total |
|||
_this.dataList = data.records |
|||
}).catch(() => { |
|||
_this.tableLoading = false |
|||
}) |
|||
}, |
|||
handleSelectionChange(val) { |
|||
console.log(val) |
|||
this.multipleSelection = val |
|||
}, |
|||
// 序号 |
|||
indexMethod(index) { |
|||
var pagestart = (this.queryParams.current - 1) * this.queryParams.size |
|||
var pageindex = index + 1 + pagestart |
|||
return pageindex |
|||
}, |
|||
toInfo(row) { |
|||
this.$refs['divInfo'].showInfo(row) |
|||
this.viewState = 4 |
|||
} |
|||
} |
|||
} |
|||
</script> |
|||
<style lang="scss" scoped> |
|||
.operate{ |
|||
display: flex; |
|||
background-color: #EDF1F7; |
|||
justify-content: space-between; |
|||
align-items: center; |
|||
border: 1px solid #dfe4ed; |
|||
height: 47px; |
|||
padding: 8px 20px; |
|||
} |
|||
.app-container-Update { |
|||
margin: 5px -9px; |
|||
background-color: #fff; |
|||
.searchcon { |
|||
margin: 0px 9px; |
|||
} |
|||
.searchbtn { |
|||
border: #2cab69 1px solid; |
|||
color: #2cab69; |
|||
} |
|||
.listcon { |
|||
margin: 0px 9px; |
|||
} |
|||
.listtop { |
|||
margin: 0px 9px; |
|||
display: flex; |
|||
justify-content: space-between; |
|||
align-items: center; |
|||
border: 1px solid #dfe4ed; |
|||
height: 40px; |
|||
.tit { |
|||
margin-bottom: -10px; |
|||
} |
|||
.pagination { |
|||
margin-bottom: -10px; |
|||
} |
|||
} |
|||
.btnColse{ |
|||
background-color: #CCCCCC; |
|||
} |
|||
} |
|||
</style> |
@ -1,381 +0,0 @@ |
|||
<template> |
|||
<div class="headInfo"> |
|||
<!--标题按钮部分开始--> |
|||
<div class="tab-headerg webtop"> |
|||
<!--标题--> |
|||
<div>{{ viewTitle }}</div> |
|||
<!--start 添加修改按钮--> |
|||
<div> |
|||
<el-button |
|||
type="primary" |
|||
size="small" |
|||
:disabled="submitdisabled" |
|||
@click="dialogStatus === 'add' ? saveAdd() : saveEdit()" |
|||
>保存 |
|||
</el-button> |
|||
<el-button type="info" size="small" @click="handleReturn()" |
|||
>返回</el-button |
|||
> |
|||
</div> |
|||
<!--end 添加修改按钮--> |
|||
<!--end 详情按钮--> |
|||
</div> |
|||
<!--标题按钮部分结束--> |
|||
<!--Start 新增修改部分--> |
|||
<div class="listconadd"> |
|||
<el-form |
|||
ref="form_obj" |
|||
:model="formobj" |
|||
:rules="rules" |
|||
label-position="top" |
|||
label-width="300px" |
|||
class="formadd" |
|||
> |
|||
<div class="wlInfo"><span>上装询价单信息</span></div> |
|||
<el-row> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">车辆功能</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="trightb"> |
|||
<el-form-item prop="topName"> |
|||
<el-select |
|||
v-model="formobj.vehicleFunction" |
|||
@change="changeVehicleFunction" |
|||
style="width: 100%" |
|||
filterable |
|||
placeholder="请选择" |
|||
> |
|||
<el-option |
|||
v-for="item in vehicleFunction_list" |
|||
:key="item.dictKey" |
|||
:label="item.dictValue" |
|||
:value="item.dictKey" |
|||
> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">上装名称</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="12" class="trightb"> |
|||
<el-form-item prop="topName"> |
|||
<el-select |
|||
v-model="formobj.topName" |
|||
@change="changeTopName" |
|||
style="width: 30%" |
|||
filterable |
|||
placeholder="请选择" |
|||
> |
|||
<el-option |
|||
v-for="item in topName_list" |
|||
:key="item.dictKey" |
|||
:label="item.dictValue" |
|||
:value="item.dictKey" |
|||
> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
<el-row> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">委改方式</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="trightb"> |
|||
<el-form-item prop="refitMethod"> |
|||
<el-input |
|||
v-model="formobj.refitMethod" |
|||
placeholder="委改方式" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">委改厂</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="12" class="trightb"> |
|||
<el-form-item prop="refitFactory"> |
|||
<el-input |
|||
v-model="formobj.refitFactory" |
|||
placeholder="委改厂" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
<el-row> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">外廓尺寸</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="trightb"> |
|||
<el-form-item prop="overallDimension"> |
|||
<el-input |
|||
v-model="formobj.overallDimension" |
|||
placeholder="外廓尺寸" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">板材材质</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="trightb"> |
|||
<el-form-item prop="plateMaterial"> |
|||
<el-input |
|||
v-model="formobj.plateMaterial" |
|||
placeholder="板材材质" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">板材厚度</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="4" class="trightb"> |
|||
<el-form-item prop="plateThickness"> |
|||
<el-input |
|||
v-model="formobj.plateThickness" |
|||
placeholder="板材厚度" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
<el-row> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item><span slot="label">公告型号</span></el-form-item> |
|||
</el-col> |
|||
<el-col :span="20" class="trightb"> |
|||
<el-form-item prop="announcementModel"> |
|||
<el-input |
|||
v-model="formobj.announcementModel" |
|||
placeholder="公告型号" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
<el-row> |
|||
<el-col :span="4" class="tleftb"> |
|||
<el-form-item prop="remarks" |
|||
><span slot="label">更多配置</span></el-form-item |
|||
> |
|||
</el-col> |
|||
<el-col :span="20" class="trightb"> |
|||
<el-form-item prop="otherConfig"> |
|||
<el-input |
|||
v-model="formobj.otherConfig" |
|||
placeholder="其他配置" |
|||
class="addinputw-copy" |
|||
clearable |
|||
/> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
</el-form> |
|||
</div> |
|||
<!--End 添加修改部分--> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
import req from "@/api/shangzhuang/shangzhuangjiansuo"; |
|||
|
|||
export default { |
|||
name: "ShangZhuangJianSuoAdd", |
|||
data() { |
|||
return { |
|||
viewTitle: "", |
|||
dialogStatus: "add", |
|||
topName_list: [], |
|||
vehicleFunction_list: [], |
|||
formobj: { |
|||
sid: "", |
|||
vehicleFunction: "", |
|||
vehicleFunctionKey: "", |
|||
topName: "", |
|||
topNameKey: "", |
|||
refitPrice: "", |
|||
announcementModel: "", |
|||
overallDimension: "", |
|||
plateMaterial: "", |
|||
plateThickness: "", |
|||
refitMethod: "", |
|||
refitFactory: "", |
|||
settlementPrice: "", |
|||
guidePrice: "", |
|||
priceValidity: "", |
|||
otherConfig: "", |
|||
}, |
|||
rules: {}, |
|||
submitdisabled: false, |
|||
}; |
|||
}, |
|||
created() { |
|||
this.DataDictionary(); |
|||
}, |
|||
methods: { |
|||
DataDictionary() { |
|||
//上装名称 |
|||
req.pullDown({ type: "topName" }).then((res) => { |
|||
if (res.code === "200") { |
|||
this.topName_list = res.data; |
|||
} |
|||
}); |
|||
//车辆功能 |
|||
req.pullDown({ type: "vehicleFunction" }).then((res) => { |
|||
if (res.code === "200") { |
|||
this.vehicleFunction_list = res.data; |
|||
} |
|||
}); |
|||
}, |
|||
changeTopName(value) { |
|||
let bb = null; |
|||
this.topName_list.forEach((e) => { |
|||
if (e.dictKey == value) { |
|||
bb = { |
|||
name: e.dictValue, |
|||
value: e.dictKey, |
|||
}; |
|||
} |
|||
}); |
|||
this.formobj.topName = bb.name; |
|||
this.formobj.topNameKey = bb.value; |
|||
}, |
|||
changeVehicleFunction(value) { |
|||
let bb = null; |
|||
this.vehicleFunction_list.forEach((e) => { |
|||
if (e.dictKey == value) { |
|||
bb = { |
|||
name: e.dictValue, |
|||
value: e.dictKey, |
|||
}; |
|||
} |
|||
}); |
|||
this.formobj.vehicleFunction = bb.name; |
|||
this.formobj.vehicleFunctionKey = bb.value; |
|||
}, |
|||
handleReturn(isreload) { |
|||
if (isreload === "true") this.$emit("reloadlist"); |
|||
this.formobj = {}; |
|||
this.$refs["form_obj"].resetFields(); |
|||
this.$emit("doback"); |
|||
}, |
|||
showAdd() { |
|||
this.$nextTick(() => { |
|||
this.$refs["form_obj"].clearValidate(); |
|||
}); |
|||
this.dialogStatus = "add"; |
|||
this.viewTitle = "【新增】上装询价单"; |
|||
}, |
|||
showEdit(row) { |
|||
this.$nextTick(() => { |
|||
this.$refs["form_obj"].clearValidate(); |
|||
}); |
|||
this.dialogStatus = "edit"; |
|||
this.viewTitle = "【编辑】上装"; |
|||
const _this = this; |
|||
req.fetchBySid(row.sid).then((resp) => { |
|||
const vdata = resp.data; |
|||
this.formobj = vdata; |
|||
console.log(this.formobj, 123); |
|||
}).catch((e) => { |
|||
this.formobj = row; |
|||
}); |
|||
}, |
|||
saveAdd() { |
|||
const _this = this; |
|||
this.$refs["form_obj"].validate((valid) => { |
|||
if (valid) { |
|||
this.submitdisabled = true; |
|||
req |
|||
.saveAdd(this.formobj) |
|||
.then((resp) => { |
|||
this.submitdisabled = false; |
|||
_this.$message({ |
|||
showClose: true, |
|||
type: "success", |
|||
message: resp.msg, |
|||
}); |
|||
_this.handleReturn("true"); |
|||
}) |
|||
.catch(() => { |
|||
this.submitdisabled = false; |
|||
}); |
|||
} else { |
|||
return false; |
|||
} |
|||
}); |
|||
}, |
|||
saveEdit() { |
|||
const _this = this; |
|||
this.$refs["form_obj"].validate((valid) => { |
|||
if (valid) { |
|||
this.submitdisabled = true; |
|||
req |
|||
.saveEdit(this.formobj, this.formobj.sid) |
|||
.then((resp) => { |
|||
this.submitdisabled = false; |
|||
_this.$message({ |
|||
showClose: true, |
|||
type: "success", |
|||
message: resp.msg, |
|||
}); |
|||
_this.handleReturn("true"); |
|||
}) |
|||
.catch(() => { |
|||
this.submitdisabled = false; |
|||
}); |
|||
} else { |
|||
return false; |
|||
} |
|||
}); |
|||
}, |
|||
}, |
|||
}; |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.headInfo { |
|||
margin-left: -14px; |
|||
margin-right: -14px; |
|||
} |
|||
|
|||
.wlInfo { |
|||
width: 100%; |
|||
height: 100%; |
|||
padding: 60px 0; |
|||
font-size: 24px; |
|||
border-width: 0 0 1px 0; |
|||
border-style: solid; |
|||
border-color: #edf1f7; |
|||
font-weight: bold; |
|||
display: flex; |
|||
justify-content: center; |
|||
align-items: center; |
|||
} |
|||
|
|||
.formadd { |
|||
padding: 0px; |
|||
} |
|||
|
|||
.tleftb { |
|||
text-align: right; |
|||
} |
|||
|
|||
.tab-headerg { |
|||
height: 35px; |
|||
background-color: #edf1f7; |
|||
padding: 20px 20px; |
|||
} |
|||
addinputw-copy { |
|||
width: 100%; |
|||
} |
|||
</style> |
@ -1,402 +0,0 @@ |
|||
|
|||
<template> |
|||
<div class="app-container-Update"> |
|||
<div v-show="viewState == 1"> |
|||
<div class="operate"> |
|||
<div class="tit">上装检索</div> |
|||
<el-button class="btnColse" size="small" icon="el-icon-close">关闭</el-button> |
|||
</div> |
|||
<div class="searchcon"> |
|||
<el-button size="small" class="searchbtn" @click="isSearchShow = !isSearchShow">{{ isSearchShow ? '隐藏查询条件' : |
|||
'显示查询条件' }} |
|||
</el-button> |
|||
<div v-show="isSearchShow" class="search"> |
|||
<el-form :inline="true" class="tab-header"> |
|||
<el-row> |
|||
<el-form-item label="车辆功能"> |
|||
<el-select v-model="queryParams.params.vehicleFunction" @change='changeVehicleFunction' filterable |
|||
placeholder="请选择"> |
|||
<el-option v-for="item in vehicleFunction_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
<el-form-item label="委改方式"> |
|||
<el-input v-model="queryParams.params.refitMethod" placeholder="请输入委改方式" clearable/> |
|||
</el-form-item> |
|||
<el-form-item label="委改厂"> |
|||
<el-input v-model="queryParams.params.refitFactory" placeholder="请输入委改厂" clearable/> |
|||
</el-form-item> |
|||
<el-form-item label="上装名称"> |
|||
<el-select v-model="queryParams.params.topName" @change='changeTopName' filterable placeholder="请选择"> |
|||
<el-option v-for="item in topName_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
<el-form-item label="外廓尺寸"> |
|||
<el-input v-model="queryParams.params.overallDimension" placeholder="请输入外廓尺寸" clearable/> |
|||
</el-form-item> |
|||
</el-row> |
|||
<el-divider/> |
|||
<div class="btn" style="text-align: center;"> |
|||
<el-button type="primary" @click="dosearch">查询</el-button> |
|||
<el-button type="primary" @click="resetQuery">重置</el-button> |
|||
</div> |
|||
</el-form> |
|||
</div> |
|||
</div> |
|||
<!--Start 项目列表头部--> |
|||
<div class="listtop"> |
|||
<div class="tit">上装配置列表</div> |
|||
<pageye v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current" :limit.sync="queryParams.size" class="pagination" @pagination="loadList"/> |
|||
</div> |
|||
<!--End 项目列表头部--> |
|||
<!--Start 项目列表--> |
|||
<div class="listcon"> |
|||
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%" |
|||
@selection-change="handleSelectionChange"> |
|||
<el-table-column width="50px" type="selection" align="center"/> |
|||
<el-table-column width="80px" label="序号" type="index" :index="indexMethod" align="center"/> |
|||
<el-table-column label="操作" align="center"> |
|||
<template slot-scope="scope"> |
|||
<span class="tablerow-click" @click="toInfo(scope.row)">选择</span> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column prop="vehicleFunction" label="车辆功能" align="center"/> |
|||
<el-table-column prop="refitMethod" label="委改方式" align="center"/> |
|||
<el-table-column prop="refitFactory" label="委改厂" align="center"/> |
|||
<el-table-column prop="topName" label="上装名称" align="center"/> |
|||
<el-table-column prop="announcementModel" label="公告型号" align="center"/> |
|||
<el-table-column prop="overallDimension" label="外廓尺寸" align="center"/> |
|||
<el-table-column prop="plateMaterial" label="板材材质" align="center"/> |
|||
<el-table-column prop="plateThickness" label="板材厚度" align="center"/> |
|||
<el-table-column prop="guidePrice" label="参考价格(万元)" align="center"/> |
|||
<el-table-column prop="priceValidity" label="价格有效期" align="center"/> |
|||
</el-table> |
|||
</div> |
|||
<!--End 项目列表--> |
|||
<div class="pages"> |
|||
<div class="tit"/> |
|||
<!-- 翻页 --> |
|||
<pagination v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current" :limit.sync="queryParams.size" class="pagination" @pagination="loadList"/> |
|||
</div> |
|||
</div> |
|||
<!--End 查询和其列表部分--> |
|||
<!--新增修改部分组件--> |
|||
<!-- <shangzhuangjiansuoAdd v-show="viewState == 2 || viewState == 3" ref="shangzhuangjiansuoAdd" @doback="resetState" @reloadlist="loadList"/> --> |
|||
<!--详情部分组件--> |
|||
<!-- <shangzhuangjiansuoInfo v-show="viewState == 4" ref="divinfo" @doback="resetState"/> --> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
import req from '@/api/shangzhuang/shangzhuangjiansuo' |
|||
import ButtonBar from '@/components/ButtonBar' |
|||
import Pagination from '@/components/pagination' |
|||
import pageye from '@/components/pagination/pageye' |
|||
// import shangzhuangjiansuoAdd from './shangzhuangjiansuoAdd' |
|||
// import shangzhuangjiansuoInfo from './shangzhuangjiansuoInfo' |
|||
|
|||
export default { |
|||
name: 'ShangZhuangJianSuoGuanLi', |
|||
components: { |
|||
ButtonBar, |
|||
Pagination, |
|||
pageye, |
|||
// shangzhuangjiansuoAdd, |
|||
// shangzhuangjiansuoInfo |
|||
}, |
|||
data() { |
|||
return { |
|||
btndisabled: false, |
|||
viewState: 1, // 1、列表 2、添加 3、修改 4、查看 |
|||
isSearchShow: false, |
|||
tableLoading: false, |
|||
activeName:'first', |
|||
dataList: [], |
|||
topName_list:[], |
|||
vehicleFunction_list:[], |
|||
queryParams: { |
|||
current: 1, |
|||
size: 10, |
|||
total: 10, |
|||
params: { |
|||
vehicleFunction:'', |
|||
vehicleFunctionKey:'', |
|||
refitMethod:'', |
|||
refitFactory:'', |
|||
topName:'', |
|||
topNameKey:'', |
|||
overallDimension:'' |
|||
} |
|||
}, |
|||
multipleSelection: [] |
|||
} |
|||
}, |
|||
created() { |
|||
this.loadList() |
|||
this.DataDictionary() |
|||
}, |
|||
methods: { |
|||
DataDictionary(){ |
|||
//上装名称 |
|||
req.pullDown({type:'topName'}).then((res)=>{ |
|||
if(res.code === '200'){ |
|||
this.topName_list=res.data |
|||
} |
|||
}) |
|||
//车辆功能 |
|||
req.pullDown({type:'vehicleFunction'}).then((res)=>{ |
|||
if(res.code === '200'){ |
|||
this.vehicleFunction_list=res.data |
|||
} |
|||
}) |
|||
}, |
|||
changeTopName(value){ |
|||
let bb=null |
|||
this.topName_list.forEach((e)=>{ |
|||
if (e.dictKey == value) { |
|||
bb = { |
|||
name: e.dictValue, |
|||
value: e.dictKey |
|||
} |
|||
} |
|||
}) |
|||
this.queryParams.params.topName=bb.name |
|||
this.queryParams.params.topNameKey=bb.value |
|||
}, |
|||
changeVehicleFunction(value){ |
|||
let bb=null |
|||
this.vehicleFunction_list.forEach((e)=>{ |
|||
if (e.dictKey == value) { |
|||
bb = { |
|||
name: e.dictValue, |
|||
value: e.dictKey |
|||
} |
|||
} |
|||
}) |
|||
this.queryParams.params.vehicleFunction=bb.name |
|||
this.queryParams.params.vehicleFunctionKey=bb.value |
|||
}, |
|||
resetState() { |
|||
this.viewState = 1 |
|||
this.queryParams = { |
|||
current: 1, |
|||
size: 10, |
|||
total: 0, |
|||
params: { |
|||
vehicleFunction:'', |
|||
vehicleFunctionKey:'', |
|||
refitMethod:'', |
|||
refitFactory:'', |
|||
topName:'', |
|||
topNameKey:'', |
|||
overallDimension:'' |
|||
} |
|||
} |
|||
this.loadList() |
|||
}, |
|||
btnHandle(btnKey) { |
|||
console.log('XXXXXXXXXXXXXXX ' + btnKey) |
|||
switch (btnKey) { |
|||
case 'toAdd': |
|||
this.toAdd() |
|||
break |
|||
case 'toEdit': |
|||
this.toEdit() |
|||
break |
|||
case 'doSubmit': |
|||
this.doSubmit() |
|||
break |
|||
case 'doDel': |
|||
this.doDel() |
|||
break |
|||
case 'doImport': |
|||
this.doImport() |
|||
break |
|||
case 'doExport': |
|||
this.doExport() |
|||
break |
|||
default: |
|||
break |
|||
} |
|||
}, |
|||
toAdd(row) { |
|||
this.viewState = 2 |
|||
this.$refs['shangzhuangjiansuoAdd'].showAdd() |
|||
}, |
|||
toEdit() { |
|||
if (this.multipleSelection.length === 0) { |
|||
this.$message({showClose: true, type: 'error', message: '请选择一条记录进行编辑'}) |
|||
return |
|||
} |
|||
if (this.multipleSelection.length > 1) { |
|||
this.$message({showClose: true, type: 'error', message: '只能选择一条记录进行编辑'}) |
|||
return |
|||
} |
|||
this.viewState = 3 |
|||
const row = this.multipleSelection[0] |
|||
this.$refs['shangzhuangAdd'].showEdit(row) |
|||
}, |
|||
doSubmit(row) { |
|||
// 提交的代码 |
|||
this.btndisabled = true |
|||
req.doSubmit(this.queryParams.params).then(resp => { |
|||
this.btndisabled = false |
|||
}).catch(() => { |
|||
this.btndisabled = false |
|||
}) |
|||
}, |
|||
doDel(row) { |
|||
if (this.multipleSelection.length === 0) { |
|||
this.$message({showClose: true, type: 'error', message: '请选择至少一条记录进行删除操作'}) |
|||
return |
|||
} |
|||
const _this = this |
|||
const sids = [] |
|||
this.multipleSelection.forEach(row => { |
|||
sids.push(row.sid) |
|||
}) |
|||
const tip = '请确认是否删除所选 ' + this.multipleSelection.length + ' 条记录?' |
|||
this.$confirm(tip, '提示', { |
|||
confirmButtonText: '确定', |
|||
cancelButtonText: '取消', |
|||
type: 'warning' |
|||
}).then(() => { |
|||
const loading = this.$loading({ |
|||
lock: true, |
|||
text: 'Loading', |
|||
spinner: 'el-icon-loading', |
|||
background: 'rgba(0, 0, 0, 0.7)' |
|||
}) |
|||
req.delBySids(sids).then(resp => { |
|||
loading.close() |
|||
_this.$message({type: 'success', message: resp.msg, showClose: true}) |
|||
_this.loadList() |
|||
}).catch(e => { |
|||
loading.close() |
|||
}) |
|||
}).catch(() => { |
|||
}) |
|||
}, |
|||
doImport(row) { |
|||
// 导入的代码 |
|||
req.importExcel(this.queryParams.params).then(resp => { |
|||
console.log(resp) |
|||
}).catch(() => { |
|||
}) |
|||
}, |
|||
doExport(row) { |
|||
// 导出的代码 |
|||
const sids = [] |
|||
this.multipleSelection.forEach(row => { |
|||
sids.push(row.sid) |
|||
}) |
|||
this.queryParams.params.sids = sids |
|||
req.exportExcel(this.queryParams.params).then(resp => { |
|||
var map = resp.data |
|||
const fileName = map.filename // 导出文件名 |
|||
// // 对于<a>标签,只有 Firefox 和 Chrome(内核) 支持 download 属性 |
|||
// // IE10以上支持blob但是依然不支持download |
|||
const link = document.createElement('a') // 创建a标签 |
|||
link.download = fileName // a标签添加属性 |
|||
link.style.display = 'none' |
|||
link.href = map.downurl |
|||
document.body.appendChild(link) |
|||
link.click() // 执行下载 |
|||
URL.revokeObjectURL(link.href) // 释放url |
|||
document.body.removeChild(link) // 释放标签 |
|||
}).catch(() => { |
|||
}) |
|||
}, |
|||
dosearch() { |
|||
this.queryParams.current=1 |
|||
this.loadList() |
|||
}, |
|||
resetQuery() { |
|||
this.queryParams = { |
|||
current: 1, |
|||
size: 10, |
|||
total: 0, |
|||
params: { |
|||
vehicleFunction:'', |
|||
vehicleFunctionKey:'', |
|||
refitMethod:'', |
|||
refitFactory:'', |
|||
topName:'', |
|||
topNameKey:'', |
|||
overallDimension:'' |
|||
} |
|||
} |
|||
this.loadList() |
|||
}, |
|||
loadList() { |
|||
const _this = this |
|||
this.tableLoading = true |
|||
req.listPage(this.queryParams).then(resp => { |
|||
_this.tableLoading = false |
|||
const data = resp.data |
|||
_this.queryParams.total = data.total |
|||
_this.dataList = data.records |
|||
}).catch(() => { |
|||
_this.tableLoading = false |
|||
}) |
|||
}, |
|||
handleSelectionChange(val) { |
|||
console.log(val) |
|||
this.multipleSelection = val |
|||
}, |
|||
// 序号 |
|||
indexMethod(index) { |
|||
var pagestart = (this.queryParams.current - 1) * this.queryParams.size |
|||
var pageindex = index + 1 + pagestart |
|||
return pageindex |
|||
}, |
|||
toInfo(row) { |
|||
// this.$refs['divinfo'].showInfo(row) |
|||
// this.viewState = 4 |
|||
} |
|||
} |
|||
} |
|||
</script> |
|||
<style lang="scss" scoped> |
|||
.operate{ |
|||
display: flex; |
|||
background-color: #EDF1F7; |
|||
justify-content: space-between; |
|||
align-items: center; |
|||
border: 1px solid #dfe4ed; |
|||
height: 47px; |
|||
padding: 8px 20px; |
|||
} |
|||
.app-container-Update { |
|||
margin: 5px -9px; |
|||
background-color: #fff; |
|||
.searchcon { |
|||
margin: 0px 9px; |
|||
} |
|||
.searchbtn { |
|||
border: #2cab69 1px solid; |
|||
color: #2cab69; |
|||
} |
|||
.listcon { |
|||
margin: 0px 9px; |
|||
} |
|||
.listtop { |
|||
margin: 0px 9px; |
|||
display: flex; |
|||
justify-content: space-between; |
|||
align-items: center; |
|||
border: 1px solid #dfe4ed; |
|||
height: 40px; |
|||
.tit { |
|||
margin-bottom: -10px; |
|||
} |
|||
.pagination { |
|||
margin-bottom: -10px; |
|||
} |
|||
} |
|||
.btnColse{ |
|||
background-color: #CCCCCC; |
|||
} |
|||
} |
|||
</style> |
Loading…
Reference in new issue