forked from macrozheng/mall-admin-web
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
zhh
committed
May 22, 2018
1 parent
8a90048
commit d93e76c
Showing
8 changed files
with
278 additions
and
11 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
<template> | ||
<product-cate-detail :is-edit='false'></product-cate-detail> | ||
</template> | ||
<script> | ||
import ProductCateDetail from './components/ProductCateDetail' | ||
export default { | ||
name: 'addProductCate', | ||
components: { ProductCateDetail } | ||
} | ||
</script> | ||
<style> | ||
</style> | ||
|
||
|
161 changes: 161 additions & 0 deletions
161
src/views/pms/productCate/components/ProductCateDetail.vue
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,161 @@ | ||
<template> | ||
<div class="form-container container-frame"> | ||
<el-form :model="productCate" | ||
:rules="rules" | ||
ref="productCateFrom" | ||
label-width="150px"> | ||
<el-form-item label="分类名称:" prop="name"> | ||
<el-input v-model="productCate.name"></el-input> | ||
</el-form-item> | ||
<el-form-item label="上级分类:"> | ||
<el-select v-model="productCate.parentId" | ||
placeholder="请选择分类"> | ||
<el-option | ||
v-for="item in selectProductCateList" | ||
:key="item.id" | ||
:label="item.name" | ||
:value="item.id"> | ||
</el-option> | ||
</el-select> | ||
</el-form-item> | ||
<el-form-item label="数量单位:"> | ||
<el-input v-model="productCate.productUnit"></el-input> | ||
</el-form-item> | ||
<el-form-item label="排序:"> | ||
<el-input v-model="productCate.sort"></el-input> | ||
</el-form-item> | ||
<el-form-item label="是否显示:"> | ||
<el-radio-group v-model="productCate.showStatus"> | ||
<el-radio :label="1">是</el-radio> | ||
<el-radio :label="0">否</el-radio> | ||
</el-radio-group> | ||
</el-form-item> | ||
<el-form-item label="是否显示在导航栏:"> | ||
<el-radio-group v-model="productCate.navStatus"> | ||
<el-radio :label="1">是</el-radio> | ||
<el-radio :label="0">否</el-radio> | ||
</el-radio-group> | ||
</el-form-item> | ||
<el-form-item label="分类图标:"> | ||
<single-upload v-model="productCate.icon"></single-upload> | ||
</el-form-item> | ||
<el-form-item label="关键词:"> | ||
<el-input v-model="productCate.keywords"></el-input> | ||
</el-form-item> | ||
<el-form-item label="分类描述:"> | ||
<el-input type="textarea" :autosize="true" v-model="productCate.description"></el-input> | ||
</el-form-item> | ||
<el-form-item> | ||
<el-button type="primary" @click="onSubmit('productCateFrom')">提交</el-button> | ||
<el-button v-if="!isEdit" @click="resetForm('productCateFrom')">重置</el-button> | ||
</el-form-item> | ||
</el-form> | ||
</div> | ||
</template> | ||
|
||
<script> | ||
import {fetchList, createProductCate, updateProductCate, getProductCate} from '@/api/productCate'; | ||
import SingleUpload from '@/components/Upload/singleUpload'; | ||
const defaultProductCate = { | ||
description: '', | ||
icon: '', | ||
keywords: '', | ||
name: '', | ||
navStatus: 0, | ||
parentId: 0, | ||
productUnit: '', | ||
showStatus: 0, | ||
sort: 0 | ||
}; | ||
export default { | ||
name: "ProductCateDetail", | ||
components: {SingleUpload}, | ||
props: { | ||
isEdit: { | ||
type: Boolean, | ||
default: false | ||
} | ||
}, | ||
data() { | ||
return { | ||
productCate: Object.assign({}, defaultProductCate), | ||
selectProductCateList: [], | ||
rules: { | ||
name: [ | ||
{required: true, message: '请输入品牌名称', trigger: 'blur'}, | ||
{min: 2, max: 140, message: '长度在 2 到 140 个字符', trigger: 'blur'} | ||
] | ||
} | ||
} | ||
}, | ||
created() { | ||
if (this.isEdit) { | ||
getProductCate(this.$route.query.id).then(response => { | ||
this.productCate = response.data; | ||
}); | ||
} else { | ||
this.productCate = Object.assign({}, defaultProductCate); | ||
} | ||
this.getSelectProductCateList(); | ||
}, | ||
methods: { | ||
getSelectProductCateList() { | ||
fetchList(0, {pageSize: 100, pageNum: 1}).then(response => { | ||
this.selectProductCateList = response.data.list; | ||
this.selectProductCateList.unshift({id: 0, name: '无上级分类'}); | ||
}); | ||
}, | ||
onSubmit(formName) { | ||
this.$refs[formName].validate((valid) => { | ||
if (valid) { | ||
this.$confirm('是否提交数据', '提示', { | ||
confirmButtonText: '确定', | ||
cancelButtonText: '取消', | ||
type: 'warning' | ||
}).then(() => { | ||
if (this.isEdit) { | ||
updateProductCate(this.$route.query.id, this.productCate).then(response => { | ||
this.$refs[formName].resetFields(); | ||
this.$message({ | ||
message: '修改成功', | ||
type: 'success', | ||
duration: 1000 | ||
}); | ||
this.$router.back(); | ||
}); | ||
} else { | ||
createProductCate(this.productCate).then(response => { | ||
this.$refs[formName].resetFields(); | ||
this.brand = Object.assign({}, defaultProductCate); | ||
this.$message({ | ||
message: '提交成功', | ||
type: 'success', | ||
duration: 1000 | ||
}); | ||
}); | ||
} | ||
}); | ||
} else { | ||
this.$message({ | ||
message: '验证失败', | ||
type: 'error', | ||
duration: 1000 | ||
}); | ||
return false; | ||
} | ||
}); | ||
}, | ||
resetForm(formName) { | ||
this.$refs[formName].resetFields(); | ||
this.productCate = Object.assign({}, defaultProductCate); | ||
this.getSelectProductCateList(); | ||
} | ||
} | ||
} | ||
</script> | ||
|
||
<style scoped> | ||
</style> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
<template> | ||
<product-cate-detail :is-edit='true'></product-cate-detail> | ||
</template> | ||
<script> | ||
import ProductCateDetail from './components/ProductCateDetail' | ||
export default { | ||
name: 'updateProductCate', | ||
components: { ProductCateDetail } | ||
} | ||
</script> | ||
<style> | ||
</style> | ||
|
||
|