|
@@ -0,0 +1,157 @@
|
|
|
+<template>
|
|
|
+ <div id="indexDetail">
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="24">
|
|
|
+ <breadcrumb :breadcrumbTitle="this.$route.meta.title"></breadcrumb>
|
|
|
+ <el-col :span="24" style="margin:0 0 15px 0;text-align:right;">
|
|
|
+ <el-button type="primary" size="mini" @click="back()">返回</el-button>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="24" class="contain">
|
|
|
+ <el-form :model="form" :rules="rules" ref="form" label-width="100px" class="demo-ruleForm">
|
|
|
+ <el-form-item label="企业名称" prop="company">
|
|
|
+ <el-input v-model="form.company"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="英文名称" prop="engCompany">
|
|
|
+ <el-input v-model="form.engCompany"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="简介" prop="brief">
|
|
|
+ <el-input type="textarea" v-model="form.brief"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="图片">
|
|
|
+ <upload
|
|
|
+ :limit="6"
|
|
|
+ :data="form.image"
|
|
|
+ :uploadBtn="true"
|
|
|
+ type="image"
|
|
|
+ :url="`/files/image/upload`"
|
|
|
+ @upload="uploadSuccess"
|
|
|
+ @delete="uploadDelete"
|
|
|
+ ></upload>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="统一热线" prop="mobile">
|
|
|
+ <el-input v-model="form.mobile"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="地址" prop="aaddress">
|
|
|
+ <el-input v-model="form.aaddress"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="微信" prop="wexin">
|
|
|
+ <el-input v-model="form.weixin"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="公众号" prop="gzh">
|
|
|
+ <el-input v-model="form.gzh"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="微博" prop="weibo">
|
|
|
+ <el-input v-model="form.weibo"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="备案" prop="beian">
|
|
|
+ <el-input v-model="form.beian"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item>
|
|
|
+ <el-button type="primary" @click="submitForm('form')">确定</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </el-col>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+import upload from '@/components/frame/uploadone.vue';
|
|
|
+import breadcrumb from '@c/common/breadcrumb.vue';
|
|
|
+import { mapState, createNamespacedHelpers } from 'vuex';
|
|
|
+const { mapActions: company } = createNamespacedHelpers('company');
|
|
|
+export default {
|
|
|
+ metaInfo() {
|
|
|
+ return { title: this.$route.meta.title };
|
|
|
+ },
|
|
|
+ name: 'indexDetail',
|
|
|
+ props: {},
|
|
|
+ components: {
|
|
|
+ upload,
|
|
|
+ breadcrumb,
|
|
|
+ },
|
|
|
+ data: function() {
|
|
|
+ return {
|
|
|
+ form: {},
|
|
|
+ rules: {
|
|
|
+ company: [{ required: true, message: '请输入企业名称', trigger: 'blur' }],
|
|
|
+ engCompany: [{ required: true, message: '请输入企业英文名称', trigger: 'blur' }],
|
|
|
+ brief: [{ required: true, message: '请输入企业简介', trigger: 'blur' }],
|
|
|
+ mobile: [{ required: true, message: '请输入热线', trigger: 'blur' }],
|
|
|
+ weixin: [{ required: true, message: '请输入微信', trigger: 'blur' }],
|
|
|
+ gzh: [{ required: true, message: '请输入公众号', trigger: 'blur' }],
|
|
|
+ weibo: [{ required: true, message: '请输入微博', trigger: 'blur' }],
|
|
|
+ beian: [{ required: true, message: '请输入备案', trigger: 'blur' }],
|
|
|
+ },
|
|
|
+ };
|
|
|
+ },
|
|
|
+ created() {
|
|
|
+ this.search();
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ ...company(['query', 'fetch', 'create', 'update', 'delete']),
|
|
|
+ async search() {
|
|
|
+ if (this.id) {
|
|
|
+ let res = await this.fetch(this.id);
|
|
|
+ if (this.$checkRes(res)) {
|
|
|
+ this.$set(this, `form`, res.data);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ submitForm(formName) {
|
|
|
+ // element表单验证
|
|
|
+ this.$refs[formName].validate(async valid => {
|
|
|
+ if (valid) {
|
|
|
+ let data = this.form;
|
|
|
+ if (data.id) {
|
|
|
+ let res = await this.update(data);
|
|
|
+ if (this.$checkRes(res)) {
|
|
|
+ this.$message({
|
|
|
+ message: '修改成功',
|
|
|
+ type: 'success',
|
|
|
+ });
|
|
|
+ this.back();
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ let res = await this.create(data);
|
|
|
+ if (this.$checkRes(res)) {
|
|
|
+ this.$message({
|
|
|
+ message: '创建成功',
|
|
|
+ type: 'success',
|
|
|
+ });
|
|
|
+ this.back();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ console.log('error submit!!');
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ back() {
|
|
|
+ this.$set(this, `form`, {});
|
|
|
+ this.$router.push({ path: '/index' });
|
|
|
+ },
|
|
|
+ uploadSuccess({ type, data }) {
|
|
|
+ let arr = _.get(this.form, type);
|
|
|
+ if (_.isArray(arr)) {
|
|
|
+ let datas = { name: data.name, url: data.uri };
|
|
|
+ this.form[type].push({ name: data.name, url: data.uri });
|
|
|
+ } else {
|
|
|
+ let newArr = [{ name: data.name, url: data.uri }];
|
|
|
+ this.$set(this.form, `${type}`, newArr);
|
|
|
+ }
|
|
|
+ },
|
|
|
+ // 删除图片
|
|
|
+ uploadDelete(index) {
|
|
|
+ this.form.image.splice(index, 1);
|
|
|
+ },
|
|
|
+ },
|
|
|
+ computed: {
|
|
|
+ ...mapState(['user']),
|
|
|
+ },
|
|
|
+};
|
|
|
+</script>
|
|
|
+
|
|
|
+<style lang="less" scoped></style>
|