|
|
@@ -1,33 +1,35 @@
|
|
|
<template>
|
|
|
- <div>
|
|
|
- <i-page-header :title="pageTitle"></i-page-header>
|
|
|
- <Card :bordered="false" dis-hover class="ivu-mt">
|
|
|
- <div style="padding: 20px 0;">
|
|
|
+ <div>
|
|
|
+ <i-page-header :title="pageTitle"></i-page-header>
|
|
|
+ <Card :bordered="false" dis-hover class="ivu-mt">
|
|
|
+ <div style="padding: 20px 0;">
|
|
|
<el-select v-model="detial.is_hot" placeholder="是否热门" style="margin:0px 10px 10px 0px;width: 140px;">
|
|
|
<el-option label="选择是否热门" value=""></el-option>
|
|
|
- <el-option label="热门" value="1"></el-option>
|
|
|
+ <el-option label="热门" value="1"></el-option>
|
|
|
<el-option label="常规" value="0"></el-option>
|
|
|
</el-select>
|
|
|
- <el-select v-model="detial.is_recommend" placeholder="是否推荐" style="margin:0px 10px 10px 0px;width: 140px;">
|
|
|
+ <el-select v-model="detial.is_recommend" placeholder="是否推荐"
|
|
|
+ style="margin:0px 10px 10px 0px;width: 140px;">
|
|
|
<el-option label="选择是否推荐" value=""></el-option>
|
|
|
- <el-option label="推荐" value="1"></el-option>
|
|
|
+ <el-option label="推荐" value="1"></el-option>
|
|
|
<el-option label="常规" value="0"></el-option>
|
|
|
</el-select>
|
|
|
- <Input placeholder="请输入标题" style="width:140px;" class="mr10" v-model="detial.title"/>
|
|
|
- <DatePicker style="width: 250px" format="yyyy-MM-dd HH:mm:ss" v-model="detial.time" type="datetimerange" placement="bottom-start" placeholder="更新时间范围" :options="options"></DatePicker>
|
|
|
+ <Input placeholder="请输入标题" style="width:140px;" class="mr10" v-model="detial.title" />
|
|
|
+ <DatePicker style="width: 250px" format="yyyy-MM-dd HH:mm:ss" v-model="detial.time" type="datetimerange"
|
|
|
+ placement="bottom-start" placeholder="更新时间范围" :options="options"></DatePicker>
|
|
|
<el-button type="primary" style="margin-left: 6px;" @click="tapSeach">查询</el-button>
|
|
|
- <el-button type="danger" style="margin-top: 10px;" @click="tapAdd">添加模板</el-button>
|
|
|
- </div>
|
|
|
-
|
|
|
+ <el-button type="danger" style="margin-top: 10px;" @click="tapAdd">添加模板</el-button>
|
|
|
+ </div>
|
|
|
+
|
|
|
<div class="muser-tab-continer">
|
|
|
- <a class="muser-tab-a" :class="detial.status=='' ? 'active':''" @click="statusChange('')">全部</a>
|
|
|
- <a class="muser-tab-a" :class="detial.status=='1' ? 'active':''" @click="statusChange('1')">上线</a>
|
|
|
- <a class="muser-tab-a" :class="detial.status=='0' ? 'active':''" @click="statusChange('0')">下架</a>
|
|
|
+ <a class="muser-tab-a" :class="detial.status=='' ? 'active':''" @click="statusChange('')">全部</a>
|
|
|
+ <a class="muser-tab-a" :class="detial.status=='1' ? 'active':''" @click="statusChange('1')">上线</a>
|
|
|
+ <a class="muser-tab-a" :class="detial.status=='0' ? 'active':''" @click="statusChange('0')">下架</a>
|
|
|
</div>
|
|
|
- <el-table :data="detial.data" v-loading="detial.loading" :stripe="true" :border="true" >
|
|
|
- <el-table-column prop="id" label="ID" width="80" align="center"></el-table-column>
|
|
|
+ <el-table :data="detial.data" v-loading="detial.loading" :stripe="true" :border="true">
|
|
|
+ <el-table-column prop="id" label="ID" width="80" align="center"></el-table-column>
|
|
|
<el-table-column prop="title" label="标题" width="200"></el-table-column>
|
|
|
- <el-table-column prop="code" label="CODE" width="100"></el-table-column>
|
|
|
+ <el-table-column prop="code" label="CODE" width="100"></el-table-column>
|
|
|
<el-table-column prop="price" label="价格" width="150">
|
|
|
<template slot-scope="scope">
|
|
|
<div>销售价:{{scope.row.price}}</div>
|
|
|
@@ -36,84 +38,91 @@
|
|
|
</el-table-column>
|
|
|
<!-- <el-table-column prop="give_score" label="赠送积分" width="100"></el-table-column> -->
|
|
|
<!-- <el-table-column prop="describe" label="描述" width="200"></el-table-column> -->
|
|
|
- <el-table-column prop="imgs" label="主图" min-width="160" align="left">
|
|
|
- <template slot-scope="scope">
|
|
|
- <img v-for="(item,index) in scope.row.imgs" :key="index" v-lazy="item" :src="item" v-image-preview style="width: 60px;cursor: pointer;margin-right: 5px;"/>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <!-- <el-table-column prop="descs" label="详情图" width="160" align="left">
|
|
|
+ <el-table-column prop="imgs" label="主图" min-width="160" align="left">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <img v-for="(item,index) in scope.row.imgs" :key="index" v-lazy="item" :src="item"
|
|
|
+ v-image-preview style="width: 60px;cursor: pointer;margin-right: 5px;" />
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <!-- <el-table-column prop="descs" label="详情图" width="160" align="left">
|
|
|
<template slot-scope="scope">
|
|
|
<img v-for="(item,index) in scope.row.descs" :key="index" v-lazy="item" :src="item" v-image-preview style="width: 60px;cursor: pointer;margin-right: 5px;"/>
|
|
|
</template>
|
|
|
</el-table-column> -->
|
|
|
<el-table-column prop="total" label="状态" width="100" align="left">
|
|
|
- <template slot-scope="scope">
|
|
|
+ <template slot-scope="scope">
|
|
|
<div>状态:
|
|
|
- <el-tag type="danger" size="mini" v-if="scope.row.status == 1">上架</el-tag>
|
|
|
- <el-tag type="info" size="mini" v-if="scope.row.status == 0">下架</el-tag>
|
|
|
+ <el-tag type="danger" size="mini" v-if="scope.row.status == 1">上架</el-tag>
|
|
|
+ <el-tag type="info" size="mini" v-if="scope.row.status == 0">下架</el-tag>
|
|
|
</div>
|
|
|
<div>热门:
|
|
|
- <el-tag type="danger" size="mini" v-if="scope.row.is_hot == 1">热门</el-tag>
|
|
|
- <el-tag type="info" size="mini" v-if="scope.row.is_hot == 0">常规</el-tag>
|
|
|
+ <el-tag type="danger" size="mini" v-if="scope.row.is_hot == 1">热门</el-tag>
|
|
|
+ <el-tag type="info" size="mini" v-if="scope.row.is_hot == 0">常规</el-tag>
|
|
|
</div>
|
|
|
<div>推荐:
|
|
|
- <el-tag type="danger" size="mini" v-if="scope.row.is_recommend == 1">推荐</el-tag>
|
|
|
- <el-tag type="info" size="mini" v-if="scope.row.is_recommend == 0">常规</el-tag>
|
|
|
+ <el-tag type="danger" size="mini" v-if="scope.row.is_recommend == 1">推荐</el-tag>
|
|
|
+ <el-tag type="info" size="mini" v-if="scope.row.is_recommend == 0">常规</el-tag>
|
|
|
</div>
|
|
|
-
|
|
|
+
|
|
|
<div>初始:
|
|
|
- <el-tag type="danger" size="mini" v-if="scope.row.is_init == 1">初始</el-tag>
|
|
|
- <el-tag type="info" size="mini" v-if="scope.row.is_init == 0">常规</el-tag>
|
|
|
+ <el-tag type="danger" size="mini" v-if="scope.row.is_init == 1">初始</el-tag>
|
|
|
+ <el-tag type="info" size="mini" v-if="scope.row.is_init == 0">常规</el-tag>
|
|
|
</div>
|
|
|
- </template>
|
|
|
+ </template>
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="admin_time" label="更新时间" width="150"></el-table-column>
|
|
|
- <el-table-column prop="time" label="添加时间" width="150"></el-table-column>
|
|
|
- <el-table-column prop="handle" label="操作" width="150" align="center">
|
|
|
- <template slot-scope="scope">
|
|
|
+ <el-table-column prop="time" label="添加时间" width="150"></el-table-column>
|
|
|
+ <el-table-column prop="handle" label="操作" width="150" align="center">
|
|
|
+ <template slot-scope="scope">
|
|
|
<div><el-button plain size="mini" @click="tapEdit(scope.row)">编辑</el-button></div>
|
|
|
- </template>
|
|
|
+ </template>
|
|
|
</el-table-column>
|
|
|
- </el-table>
|
|
|
- <div class="acea-row row-right page">
|
|
|
- <Page :total="detial.pageCount" show-elevator show-total @on-change="tapPage" :page-size="detial.pageSize"/>
|
|
|
- </div>
|
|
|
- </Card>
|
|
|
-
|
|
|
- <Modal v-model="dialogVisible" :title="title" @on-cancel="editClose" width="800">
|
|
|
- <div>
|
|
|
- <el-form ref="form" :model="form" label-width="120px">
|
|
|
- <el-tabs v-model="formActiveName">
|
|
|
- <el-tab-pane label="基础信息" name="tab_base">
|
|
|
- <el-form-item label="模板标题" prop="title" :rules="[{ required: true, message: '请输入模板标题'}]">
|
|
|
- <el-input placeholder="请输入模板标题" autocomplete="off" v-model="form.title"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="模板CODE" prop="code" :rules="[{ required: true, message: '请输入模板CODE'}]">
|
|
|
- <el-input placeholder="请输入模板CODE" autocomplete="off" v-model="form.code" :disabled="(form.id && form.id>0)?true:false"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <!-- <el-form-item label="模板描述" prop="describe">
|
|
|
+ </el-table>
|
|
|
+ <div class="acea-row row-right page">
|
|
|
+ <Page :total="detial.pageCount" show-elevator show-total @on-change="tapPage"
|
|
|
+ :page-size="detial.pageSize" />
|
|
|
+ </div>
|
|
|
+ </Card>
|
|
|
+
|
|
|
+ <Modal v-model="dialogVisible" :title="title" @on-cancel="editClose" width="800">
|
|
|
+ <div>
|
|
|
+ <el-form ref="form" :model="form" label-width="120px">
|
|
|
+ <el-tabs v-model="formActiveName">
|
|
|
+ <el-tab-pane label="基础信息" name="tab_base">
|
|
|
+ <el-form-item label="模板标题" prop="title" :rules="[{ required: true, message: '请输入模板标题'}]">
|
|
|
+ <el-input placeholder="请输入模板标题" autocomplete="off" v-model="form.title"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="模板CODE" prop="code" :rules="[{ required: true, message: '请输入模板CODE'}]">
|
|
|
+ <el-input placeholder="请输入模板CODE" autocomplete="off" v-model="form.code"
|
|
|
+ :disabled="(form.id && form.id>0)?true:false"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <!-- <el-form-item label="模板描述" prop="describe">
|
|
|
<el-input placeholder="请输入模板描述" autocomplete="off" v-model="form.describe" type="textarea"></el-input>
|
|
|
</el-form-item> -->
|
|
|
- <el-form-item label="模板售价" prop="price" :rules="[{ required: true, message: '请输入模板售价'}]">
|
|
|
- <el-input placeholder="请输入模板售价" autocomplete="off" v-model="form.price"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="模板划线价" prop="old_price" :rules="[{ required: true, message: '请输入模板划线价'}]">
|
|
|
- <el-input placeholder="请输入模板划线价" autocomplete="off" v-model="form.old_price"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <!-- <el-form-item label="虚拟销量" prop="unreal_sales">
|
|
|
+ <el-form-item label="模板售价" prop="price" :rules="[{ required: true, message: '请输入模板售价'}]">
|
|
|
+ <el-input placeholder="请输入模板售价" autocomplete="off" v-model="form.price"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="模板划线价" prop="old_price"
|
|
|
+ :rules="[{ required: true, message: '请输入模板划线价'}]">
|
|
|
+ <el-input placeholder="请输入模板划线价" autocomplete="off" v-model="form.old_price"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <!-- <el-form-item label="虚拟销量" prop="unreal_sales">
|
|
|
<el-input placeholder="请输入虚拟销量" autocomplete="off" v-model="form.unreal_sales"></el-input>
|
|
|
</el-form-item> -->
|
|
|
-
|
|
|
- <el-form-item label="主图" prop="imgs">
|
|
|
- <div class="clearfix" style="width: 100%;">
|
|
|
- <div class="upimg-item fx-r fx-bc fx-ac" style="" v-for="(item,index) in form.imgs" :key="index">
|
|
|
- <img v-lazy="item" :src="item" v-image-preview/>
|
|
|
- <i class="el-icon-error img-remove-btn" @click="removeImgs(index)"></i>
|
|
|
+
|
|
|
+ <el-form-item label="主图" prop="imgs">
|
|
|
+ <div class="clearfix" style="width: 100%;">
|
|
|
+ <div class="upimg-item fx-r fx-bc fx-ac" style="" v-for="(item,index) in form.imgs"
|
|
|
+ :key="index">
|
|
|
+ <img v-lazy="item" :src="item" v-image-preview />
|
|
|
+ <i class="el-icon-error img-remove-btn" @click="removeImgs(index)"></i>
|
|
|
+ </div>
|
|
|
+ <ui-upload style="float: left;" :upUrl="upUrl" fileName="上传图片" :headers="upHeaders"
|
|
|
+ :updata="{isz:0,code:'goods'}" @onUpload="onUpload"
|
|
|
+ v-if="form.imgs.length<5"></ui-upload>
|
|
|
</div>
|
|
|
- <ui-upload style="float: left;" :upUrl="upUrl" fileName="上传图片" :headers="upHeaders" :updata="{isz:0,code:'goods'}" @onUpload="onUpload" v-if="form.imgs.length<5"></ui-upload>
|
|
|
- </div>
|
|
|
- </el-form-item>
|
|
|
- <!-- <el-form-item label="详情图" prop="descs" :rules="[{ required: true, message: '请上传详情图'}]">
|
|
|
+ </el-form-item>
|
|
|
+ <!-- <el-form-item label="详情图" prop="descs" :rules="[{ required: true, message: '请上传详情图'}]">
|
|
|
<div class="clearfix" style="width: 100%;">
|
|
|
<div class="upimg-item fx-r fx-bc fx-ac" style="" v-for="(item,index) in form.descs" :key="index">
|
|
|
<img v-lazy="item" :src="item" v-image-preview/>
|
|
|
@@ -122,199 +131,210 @@
|
|
|
<ui-upload style="float: left;" :upUrl="upUrl" fileName="上传图片" :headers="upHeaders" :updata="{isz:0,code:'goods'}" @onUpload="onUploadDescs" v-if="form.descs.length<5"></ui-upload>
|
|
|
</div>
|
|
|
</el-form-item> -->
|
|
|
- <!-- <el-form-item label="赠送积分" prop="give_score">
|
|
|
+ <!-- <el-form-item label="赠送积分" prop="give_score">
|
|
|
<el-input placeholder="请输入赠送积分数" autocomplete="off" v-model="form.give_score" type="number"></el-input>
|
|
|
</el-form-item> -->
|
|
|
- <el-form-item label="是否热门" style="margin-bottom: 0;">
|
|
|
- <el-radio-group v-model="form.is_hot">
|
|
|
- <el-radio :label="1">热门</el-radio>
|
|
|
- <el-radio :label="0">常规</el-radio>
|
|
|
- </el-radio-group>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="是否推荐" style="margin-bottom: 0;">
|
|
|
- <el-radio-group v-model="form.is_recommend">
|
|
|
- <el-radio :label="1">推荐</el-radio>
|
|
|
- <el-radio :label="0">常规</el-radio>
|
|
|
- </el-radio-group>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="是否上架" style="margin-bottom: 0;">
|
|
|
- <el-radio-group v-model="form.status">
|
|
|
- <el-radio :label="1">上架</el-radio>
|
|
|
- <el-radio :label="0">下架</el-radio>
|
|
|
- </el-radio-group>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="初始模板" style="margin-bottom: 0;">
|
|
|
- <el-radio-group v-model="form.is_init">
|
|
|
- <el-radio :label="1">初始</el-radio>
|
|
|
- <el-radio :label="0">常规</el-radio>
|
|
|
- </el-radio-group>
|
|
|
- </el-form-item>
|
|
|
- </el-tab-pane>
|
|
|
- </el-tabs>
|
|
|
- </el-form>
|
|
|
-
|
|
|
- </div>
|
|
|
- <span slot="footer" class="dialog-footer">
|
|
|
- <el-button @click="dialogVisible = false">取 消</el-button>
|
|
|
- <el-button type="primary" @click="subAdmin">确 定</el-button>
|
|
|
- </span>
|
|
|
- </Modal>
|
|
|
-
|
|
|
- </div>
|
|
|
+ <el-form-item label="是否热门" style="margin-bottom: 0;">
|
|
|
+ <el-radio-group v-model="form.is_hot">
|
|
|
+ <el-radio :label="1">热门</el-radio>
|
|
|
+ <el-radio :label="0">常规</el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="是否推荐" style="margin-bottom: 0;">
|
|
|
+ <el-radio-group v-model="form.is_recommend">
|
|
|
+ <el-radio :label="1">推荐</el-radio>
|
|
|
+ <el-radio :label="0">常规</el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="是否上架" style="margin-bottom: 0;">
|
|
|
+ <el-radio-group v-model="form.status">
|
|
|
+ <el-radio :label="1">上架</el-radio>
|
|
|
+ <el-radio :label="0">下架</el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="初始模板" style="margin-bottom: 0;">
|
|
|
+ <el-radio-group v-model="form.is_init">
|
|
|
+ <el-radio :label="1">初始</el-radio>
|
|
|
+ <el-radio :label="0">常规</el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+ </el-tab-pane>
|
|
|
+ </el-tabs>
|
|
|
+ </el-form>
|
|
|
+
|
|
|
+ </div>
|
|
|
+ <span slot="footer" class="dialog-footer">
|
|
|
+ <el-button @click="dialogVisible = false">取 消</el-button>
|
|
|
+ <el-button type="primary" @click="subAdmin">确 定</el-button>
|
|
|
+ </span>
|
|
|
+ </Modal>
|
|
|
+
|
|
|
+ </div>
|
|
|
</template>
|
|
|
<script>
|
|
|
- import {SystemShowTemplateList,SystemShowTemplateAdd} from "../../../api/system/showTemplate";
|
|
|
-
|
|
|
- import IPageHeader from "../../../layouts/system/page-header/index";
|
|
|
+ import {
|
|
|
+ SystemShowTemplateList,
|
|
|
+ SystemShowTemplateAdd
|
|
|
+ } from "../../../api/system/showTemplate";
|
|
|
+
|
|
|
+ import IPageHeader from "../../../layouts/system/page-header/index";
|
|
|
import UiUpload from "@/ui/upload/index";
|
|
|
import Setting from '@/setting';
|
|
|
- export default {
|
|
|
- name: "system_showTemplate_list",
|
|
|
- components: {UiUpload,IPageHeader},
|
|
|
- computed: {},
|
|
|
- data() {
|
|
|
- return {
|
|
|
- pageTitle:'模板列表',
|
|
|
- upHeaders:{},
|
|
|
- upUrl:"",
|
|
|
- cateData:[],
|
|
|
- detial: {
|
|
|
- is_hot : "",
|
|
|
- is_recommend : "",
|
|
|
- title : "",
|
|
|
- time : "",
|
|
|
- status : "",
|
|
|
-
|
|
|
- data : [],
|
|
|
- page : 1,
|
|
|
- loading : true,
|
|
|
- pageSize : 0,
|
|
|
- pageCount : 0,
|
|
|
- },
|
|
|
-
|
|
|
+ export default {
|
|
|
+ name: "system_showTemplate_list",
|
|
|
+ components: {
|
|
|
+ UiUpload,
|
|
|
+ IPageHeader
|
|
|
+ },
|
|
|
+ computed: {},
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ pageTitle: '模板列表',
|
|
|
+ upHeaders: {},
|
|
|
+ upUrl: "",
|
|
|
+ cateData: [],
|
|
|
+ detial: {
|
|
|
+ is_hot: "",
|
|
|
+ is_recommend: "",
|
|
|
+ title: "",
|
|
|
+ time: "",
|
|
|
+ status: "",
|
|
|
+
|
|
|
+ data: [],
|
|
|
+ page: 1,
|
|
|
+ loading: true,
|
|
|
+ pageSize: 0,
|
|
|
+ pageCount: 0,
|
|
|
+ },
|
|
|
+
|
|
|
options: {
|
|
|
- shortcuts: [
|
|
|
- {
|
|
|
- text: '今天',
|
|
|
- value() {
|
|
|
- const end = new Date();
|
|
|
- const start = new Date();
|
|
|
- start.setTime(new Date(new Date().getFullYear(), new Date().getMonth(), new Date().getDate()));
|
|
|
- return [start, end];
|
|
|
- }
|
|
|
- },
|
|
|
- {
|
|
|
- text: '昨天',
|
|
|
- value() {
|
|
|
- const end = new Date();
|
|
|
- const start = new Date();
|
|
|
- start.setTime(start.setTime(new Date(new Date().getFullYear(), new Date().getMonth(), new Date().getDate() - 1)));
|
|
|
- end.setTime(end.setTime(new Date(new Date().getFullYear(), new Date().getMonth(), new Date().getDate())));
|
|
|
- return [start, end];
|
|
|
- }
|
|
|
- },
|
|
|
- {
|
|
|
- text: '最近7天',
|
|
|
- value() {
|
|
|
- const end = new Date();
|
|
|
- const start = new Date();
|
|
|
- start.setTime(start.setTime(new Date(new Date().getFullYear(), new Date().getMonth(), new Date().getDate() - 6)));
|
|
|
- return [start, end];
|
|
|
- }
|
|
|
- },
|
|
|
- {
|
|
|
- text: '最近30天',
|
|
|
- value() {
|
|
|
- const end = new Date();
|
|
|
- const start = new Date();
|
|
|
- start.setTime(start.setTime(new Date(new Date().getFullYear(), new Date().getMonth(), new Date().getDate() - 29)));
|
|
|
- return [start, end];
|
|
|
- }
|
|
|
- },
|
|
|
- {
|
|
|
- text: '本月',
|
|
|
- value() {
|
|
|
- const end = new Date();
|
|
|
- const start = new Date();
|
|
|
- start.setTime(start.setTime(new Date(new Date().getFullYear(), new Date().getMonth(), 1)));
|
|
|
- return [start, end];
|
|
|
- }
|
|
|
- },
|
|
|
- {
|
|
|
- text: '本年',
|
|
|
- value() {
|
|
|
- const end = new Date();
|
|
|
- const start = new Date();
|
|
|
- start.setTime(start.setTime(new Date(new Date().getFullYear(), 0, 1)));
|
|
|
- return [start, end];
|
|
|
- }
|
|
|
- }
|
|
|
- ]
|
|
|
+ shortcuts: [{
|
|
|
+ text: '今天',
|
|
|
+ value() {
|
|
|
+ const end = new Date();
|
|
|
+ const start = new Date();
|
|
|
+ start.setTime(new Date(new Date().getFullYear(), new Date().getMonth(), new Date()
|
|
|
+ .getDate()));
|
|
|
+ return [start, end];
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ text: '昨天',
|
|
|
+ value() {
|
|
|
+ const end = new Date();
|
|
|
+ const start = new Date();
|
|
|
+ start.setTime(start.setTime(new Date(new Date().getFullYear(), new Date().getMonth(),
|
|
|
+ new Date().getDate() - 1)));
|
|
|
+ end.setTime(end.setTime(new Date(new Date().getFullYear(), new Date().getMonth(),
|
|
|
+ new Date().getDate())));
|
|
|
+ return [start, end];
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ text: '最近7天',
|
|
|
+ value() {
|
|
|
+ const end = new Date();
|
|
|
+ const start = new Date();
|
|
|
+ start.setTime(start.setTime(new Date(new Date().getFullYear(), new Date().getMonth(),
|
|
|
+ new Date().getDate() - 6)));
|
|
|
+ return [start, end];
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ text: '最近30天',
|
|
|
+ value() {
|
|
|
+ const end = new Date();
|
|
|
+ const start = new Date();
|
|
|
+ start.setTime(start.setTime(new Date(new Date().getFullYear(), new Date().getMonth(),
|
|
|
+ new Date().getDate() - 29)));
|
|
|
+ return [start, end];
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ text: '本月',
|
|
|
+ value() {
|
|
|
+ const end = new Date();
|
|
|
+ const start = new Date();
|
|
|
+ start.setTime(start.setTime(new Date(new Date().getFullYear(), new Date().getMonth(),
|
|
|
+ 1)));
|
|
|
+ return [start, end];
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ text: '本年',
|
|
|
+ value() {
|
|
|
+ const end = new Date();
|
|
|
+ const start = new Date();
|
|
|
+ start.setTime(start.setTime(new Date(new Date().getFullYear(), 0, 1)));
|
|
|
+ return [start, end];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ]
|
|
|
},
|
|
|
- dialogVisible:false,
|
|
|
- title:"",
|
|
|
- add_parms_name:"",
|
|
|
- formActiveName:"tab_base",
|
|
|
- form:{
|
|
|
- id : "",
|
|
|
- imgs : [],
|
|
|
+ dialogVisible: false,
|
|
|
+ title: "",
|
|
|
+ add_parms_name: "",
|
|
|
+ formActiveName: "tab_base",
|
|
|
+ form: {
|
|
|
+ id: "",
|
|
|
+ imgs: [],
|
|
|
// descs : [],
|
|
|
- status : 1,
|
|
|
- is_hot : 0,
|
|
|
- is_recommend : 0,
|
|
|
- is_init : 0,
|
|
|
- data : [],
|
|
|
+ status: 1,
|
|
|
+ is_hot: 0,
|
|
|
+ is_recommend: 0,
|
|
|
+ is_init: 0,
|
|
|
+ data: [],
|
|
|
},
|
|
|
- defaultParms:[],
|
|
|
- }
|
|
|
- },
|
|
|
- created() {
|
|
|
- this.initView();
|
|
|
- },
|
|
|
- methods: {
|
|
|
+ defaultParms: [],
|
|
|
+ }
|
|
|
+ },
|
|
|
+ created() {
|
|
|
+ this.initView();
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
/**
|
|
|
* 添加
|
|
|
*/
|
|
|
- tapAdd:function(sassid){
|
|
|
+ tapAdd: function(sassid) {
|
|
|
var that = this;
|
|
|
- this.dialogVisible = true;
|
|
|
- that.add_parms_name="",
|
|
|
- that.formActiveName="tab_base",
|
|
|
- this.$refs['form'].resetFields();
|
|
|
- this.form = this.$utils.resetFields(this.form, {
|
|
|
- imgs : [],
|
|
|
+ this.dialogVisible = true;
|
|
|
+ that.add_parms_name = "",
|
|
|
+ that.formActiveName = "tab_base",
|
|
|
+ this.$refs['form'].resetFields();
|
|
|
+ this.form = this.$utils.resetFields(this.form, {
|
|
|
+ imgs: [],
|
|
|
// descs : [],
|
|
|
- status : 1,
|
|
|
- is_hot : 0,
|
|
|
- is_recommend : 0,
|
|
|
- data : JSON.parse(JSON.stringify(that.defaultParms)),
|
|
|
+ status: 1,
|
|
|
+ is_hot: 0,
|
|
|
+ is_recommend: 0,
|
|
|
+ data: JSON.parse(JSON.stringify(that.defaultParms)),
|
|
|
});
|
|
|
-
|
|
|
+
|
|
|
},
|
|
|
- initView:function(){
|
|
|
+ initView: function() {
|
|
|
var upHeaders = {};
|
|
|
this.upUrl = Setting.apiBaseURL + "/systemv1/upload/index";
|
|
|
const token = this.$utils.util.cookies.get('system_token');
|
|
|
if (token) {
|
|
|
- upHeaders['SYSTEM-ACC-TOKEN'] = token;
|
|
|
+ upHeaders['SYSTEM-ACC-TOKEN'] = token;
|
|
|
}
|
|
|
this.upHeaders = upHeaders;
|
|
|
- this.getData();
|
|
|
- },
|
|
|
- removeParms:function(index){
|
|
|
- this.$delete(this.form.data,index);
|
|
|
+ this.getData();
|
|
|
+ },
|
|
|
+ removeParms: function(index) {
|
|
|
+ this.$delete(this.form.data, index);
|
|
|
},
|
|
|
- addParms:function(){
|
|
|
+ addParms: function() {
|
|
|
var name = this.add_parms_name;
|
|
|
- if(this.add_parms_name){
|
|
|
+ if (this.add_parms_name) {
|
|
|
this.form.data.push({
|
|
|
- title:name,
|
|
|
- content:"",
|
|
|
+ title: name,
|
|
|
+ content: "",
|
|
|
})
|
|
|
- this.add_parms_name="";
|
|
|
+ this.add_parms_name = "";
|
|
|
}
|
|
|
},
|
|
|
- statusChange:function(status){
|
|
|
+ statusChange: function(status) {
|
|
|
this.detial.status = status;
|
|
|
this.detial.page = 1
|
|
|
this.getData()
|
|
|
@@ -323,113 +343,161 @@
|
|
|
* 上传文件
|
|
|
* @param res
|
|
|
*/
|
|
|
- onUpload:function (res) {
|
|
|
- if(res.code == -1) {
|
|
|
- Notice.error({ title : "系统提示", content:res.msg});
|
|
|
- } else {
|
|
|
- this.form.imgs.push(res.data.img);
|
|
|
- }
|
|
|
+ onUpload: function(res) {
|
|
|
+ if (res.code == -1) {
|
|
|
+ Notice.error({
|
|
|
+ title: "系统提示",
|
|
|
+ content: res.msg
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ this.form.imgs.push(res.data.img);
|
|
|
+ }
|
|
|
},
|
|
|
- onUploadDescs:function(res){
|
|
|
- if(res.code == -1) {
|
|
|
- Notice.error({ title : "系统提示", content:res.msg});
|
|
|
+ onUploadDescs: function(res) {
|
|
|
+ if (res.code == -1) {
|
|
|
+ Notice.error({
|
|
|
+ title: "系统提示",
|
|
|
+ content: res.msg
|
|
|
+ });
|
|
|
} else {
|
|
|
- this.form.descs.push(res.data.img);
|
|
|
+ this.form.descs.push(res.data.img);
|
|
|
}
|
|
|
},
|
|
|
- tapEdit:function(row){
|
|
|
- this.formActiveName="tab_base";
|
|
|
+ tapEdit: function(row) {
|
|
|
+ this.formActiveName = "tab_base";
|
|
|
this.form = JSON.parse(JSON.stringify(row));
|
|
|
this.dialogVisible = true;
|
|
|
this.title = "编辑模板";
|
|
|
},
|
|
|
//关闭
|
|
|
- editClose:function(){
|
|
|
- this.dialogVisible = false;
|
|
|
+ editClose: function() {
|
|
|
+ this.dialogVisible = false;
|
|
|
},
|
|
|
- removeImgs:function(index){
|
|
|
- this.$delete(this.form.imgs,index);
|
|
|
+ removeImgs: function(index) {
|
|
|
+ this.$delete(this.form.imgs, index);
|
|
|
},
|
|
|
- removeDescs:function(index){
|
|
|
- this.$delete(this.form.descs,index);
|
|
|
+ removeDescs: function(index) {
|
|
|
+ this.$delete(this.form.descs, index);
|
|
|
},
|
|
|
/**
|
|
|
* 修改数据
|
|
|
*/
|
|
|
- subAdmin:function(e){
|
|
|
- this.$refs['form'].validate((valid) => {
|
|
|
- if (valid) {
|
|
|
- let loading = this.$loading("提交数据中...");
|
|
|
- var data = {};
|
|
|
- for(var i in this.form) {
|
|
|
- data[i] = this.form[i];
|
|
|
- }
|
|
|
- SystemShowTemplateAdd(data)
|
|
|
- .then(res => {
|
|
|
- loading.close();
|
|
|
- if (res.code == 200) {
|
|
|
- this.dialogVisible = false;
|
|
|
- this.$Message.success("操作成功");
|
|
|
- this.getData();
|
|
|
- } else {
|
|
|
- this.$alert(res.msg, '系统提示');
|
|
|
- }
|
|
|
- })
|
|
|
- .catch(err => {
|
|
|
- loading.close();
|
|
|
- this.$alert("网络繁忙,加载失败,请稍等片刻在尝试!", '系统提示');
|
|
|
- });
|
|
|
- }
|
|
|
- });
|
|
|
+ subAdmin: function(e) {
|
|
|
+ this.$refs['form'].validate((valid) => {
|
|
|
+ if (valid) {
|
|
|
+ let loading = this.$loading("提交数据中...");
|
|
|
+ var data = {};
|
|
|
+ for (var i in this.form) {
|
|
|
+ data[i] = this.form[i];
|
|
|
+ }
|
|
|
+ SystemShowTemplateAdd(data)
|
|
|
+ .then(res => {
|
|
|
+ loading.close();
|
|
|
+ if (res.code == 200) {
|
|
|
+ this.dialogVisible = false;
|
|
|
+ this.$Message.success("操作成功");
|
|
|
+ this.getData();
|
|
|
+ } else {
|
|
|
+ this.$alert(res.msg, '系统提示');
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .catch(err => {
|
|
|
+ loading.close();
|
|
|
+ this.$alert("网络繁忙,加载失败,请稍等片刻在尝试!", '系统提示');
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+
|
|
|
+
|
|
|
+ //搜索栏目
|
|
|
+ tapSeach: function() {
|
|
|
+ this.detial.page = 1;
|
|
|
+ this.getData();
|
|
|
},
|
|
|
-
|
|
|
-
|
|
|
- //搜索栏目
|
|
|
- tapSeach:function () {
|
|
|
- this.detial.page = 1;
|
|
|
- this.getData();
|
|
|
- },
|
|
|
- //分页
|
|
|
- tapPage:function (page) {
|
|
|
- this.detial.page = page;
|
|
|
- this.getData();
|
|
|
- },
|
|
|
- getData: function () {
|
|
|
- var data = {};
|
|
|
+ //分页
|
|
|
+ tapPage: function(page) {
|
|
|
+ this.detial.page = page;
|
|
|
+ this.getData();
|
|
|
+ },
|
|
|
+ getData: function() {
|
|
|
+ var data = {};
|
|
|
var that = this;
|
|
|
- this.detial.loading = true;
|
|
|
- data.page = this.detial.page;
|
|
|
- data.status = this.detial.status;
|
|
|
- data.is_hot = this.detial.is_hot;
|
|
|
+ this.detial.loading = true;
|
|
|
+ data.page = this.detial.page;
|
|
|
+ data.status = this.detial.status;
|
|
|
+ data.is_hot = this.detial.is_hot;
|
|
|
data.is_recommend = this.detial.is_recommend;
|
|
|
- data.title = this.detial.title;
|
|
|
- data.time = this.detial.time;
|
|
|
- SystemShowTemplateList(data).then(res => {
|
|
|
- this.detial.loading = false;
|
|
|
- this.detial.data = res.data.list;
|
|
|
- this.detial.pageSize = res.data.pageSize;
|
|
|
- this.detial.pageCount = res.data.pageCount;
|
|
|
- // if(that.defaultParms.length<=0 && res.data.defaultParms){
|
|
|
- // that.defaultParms = res.data.defaultParms;
|
|
|
- // }
|
|
|
- }).catch(err => {
|
|
|
- this.detial.loading = false;
|
|
|
- this.$alert('网络繁忙,加载失败,请稍等片刻在尝试!', '系统提示');
|
|
|
- });
|
|
|
- },
|
|
|
- }
|
|
|
- }
|
|
|
+ data.title = this.detial.title;
|
|
|
+ data.time = this.detial.time;
|
|
|
+ SystemShowTemplateList(data).then(res => {
|
|
|
+ this.detial.loading = false;
|
|
|
+ this.detial.data = res.data.list;
|
|
|
+ this.detial.pageSize = res.data.pageSize;
|
|
|
+ this.detial.pageCount = res.data.pageCount;
|
|
|
+ // if(that.defaultParms.length<=0 && res.data.defaultParms){
|
|
|
+ // that.defaultParms = res.data.defaultParms;
|
|
|
+ // }
|
|
|
+ }).catch(err => {
|
|
|
+ this.detial.loading = false;
|
|
|
+ this.$alert('网络繁忙,加载失败,请稍等片刻在尝试!', '系统提示');
|
|
|
+ });
|
|
|
+ },
|
|
|
+ }
|
|
|
+ }
|
|
|
</script>
|
|
|
<style scoped>
|
|
|
-iframe.videoIframe{border: 0px;padding: 0px;}
|
|
|
-.el-dialog__body{padding: 0px;}
|
|
|
-.el-dialog__body iframe body{padding: 0px;}
|
|
|
+ iframe.videoIframe {
|
|
|
+ border: 0px;
|
|
|
+ padding: 0px;
|
|
|
+ }
|
|
|
+
|
|
|
+ .el-dialog__body {
|
|
|
+ padding: 0px;
|
|
|
+ }
|
|
|
+
|
|
|
+ .el-dialog__body iframe body {
|
|
|
+ padding: 0px;
|
|
|
+ }
|
|
|
+
|
|
|
+ .muser-tab-continer {
|
|
|
+ border: 1px solid #EEEEEE
|
|
|
+ }
|
|
|
+
|
|
|
+ a.muser-tab-a {
|
|
|
+ display: inline-block;
|
|
|
+ padding: 0px 28px;
|
|
|
+ height: 42px;
|
|
|
+ line-height: 42px;
|
|
|
+ border-bottom: 3px solid transparent;
|
|
|
+ font-size: 17px;
|
|
|
+ color: #595959;
|
|
|
+ }
|
|
|
+
|
|
|
+ a.muser-tab-a.active {
|
|
|
+ border-bottom: 3px solid #EA312B;
|
|
|
+ color: #EA312B
|
|
|
+ }
|
|
|
+
|
|
|
+ .upimg-item {
|
|
|
+ width: 82px;
|
|
|
+ height: 82px;
|
|
|
+ margin-right: 5px;
|
|
|
+ overflow: hidden;
|
|
|
+ float: left;
|
|
|
+ margin-bottom: 5px;
|
|
|
+ position: relative;
|
|
|
+ }
|
|
|
+
|
|
|
+ .upimg-item img {
|
|
|
+ width: 82px;
|
|
|
+ cursor: pointer;
|
|
|
+ }
|
|
|
|
|
|
- .muser-tab-continer{border:1px solid #EEEEEE}
|
|
|
- a.muser-tab-a{display: inline-block;padding: 0px 28px;height:42px;line-height: 42px;border-bottom:3px solid transparent;font-size: 17px;color:#595959;}
|
|
|
- a.muser-tab-a.active{border-bottom:3px solid #EA312B;color:#EA312B}
|
|
|
-
|
|
|
- .upimg-item{width: 82px;height: 82px;margin-right: 5px;overflow: hidden;float: left;margin-bottom: 5px;position: relative;}
|
|
|
- .upimg-item img{width: 82px;cursor: pointer;}
|
|
|
- .img-remove-btn{position: absolute;top: 0px;right: 0px;font-size: 24px;}
|
|
|
-</style>
|
|
|
+ .img-remove-btn {
|
|
|
+ position: absolute;
|
|
|
+ top: 0px;
|
|
|
+ right: 0px;
|
|
|
+ font-size: 24px;
|
|
|
+ }
|
|
|
+</style>
|