Commit cade2375 authored by chenyishuai@singsingenglish.com's avatar chenyishuai@singsingenglish.com

814

parents 9eb0f525 5bb62fd3
...@@ -4,15 +4,15 @@ ...@@ -4,15 +4,15 @@
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0"> <meta name="viewport" content="width=device-width,initial-scale=1.0">
<meta name="referrer" content="never"> <meta name="referrer" content="never">
<link rel="stylesheet" href="https:////at.alicdn.com/t/font_746649_x1rivf5f5.css"> <link rel="stylesheet" href="https://at.alicdn.com/t/font_746649_x1rivf5f5.css">
<link rel="stylesheet" href="https://lib.baomitu.com/element-ui/2.11.1/theme-chalk/index.css"> <link rel="stylesheet" href="https://lib.baomitu.com/element-ui/2.11.1/theme-chalk/index.css">
<title>唱唱启蒙-后台</title> <title>唱唱启蒙-后台</title>
</head> </head>
<body> <body>
<!-- 先引入 Vue --> <!-- 先引入 Vue -->
<script src="https://cdn.bootcss.com/vue/2.5.17/vue.js"></script> <!--<script src="https://lib.baomitu.com/vue/2.5.17/vue.min.js"></script>-->
<!-- <script src="https://cdn.bootcss.com/vue/2.5.17/vue.min.js"></script> --> <script src="https://lib.baomitu.com/vue/2.5.17/vue.js"></script>
<script src="https://unpkg.com/vuex@3.0.1"></script> <script src="https://lib.baomitu.com/vuex/3.0.1/vuex.min.js"></script>
<!-- 引入组件库 --> <!-- 引入组件库 -->
<script src="https://cdn.bootcss.com/axios/0.18.0/axios.min.js"></script> <script src="https://cdn.bootcss.com/axios/0.18.0/axios.min.js"></script>
<script src="https://lib.baomitu.com/element-ui/2.11.1/index.js"></script> <script src="https://lib.baomitu.com/element-ui/2.11.1/index.js"></script>
......
...@@ -200,10 +200,7 @@ ...@@ -200,10 +200,7 @@
<el-table-column prop="title" label="标题"></el-table-column> <el-table-column prop="title" label="标题"></el-table-column>
<el-table-column label="操作" width="120px" v-if="!$store.state.readonly"> <el-table-column label="操作" width="120px" v-if="!$store.state.readonly">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button @click="delStarListFn(scope.row)" type="warning" plain size="mini">删除</el-button>
@click="delStarListFn(scope.row)"
type="warning" plain size="mini">删除
</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
......
...@@ -11,8 +11,7 @@ ...@@ -11,8 +11,7 @@
end-placeholder="结束日期" end-placeholder="结束日期"
:picker-options="{shortcuts:[today,yesterday,last7Day,last30Day]}" :picker-options="{shortcuts:[today,yesterday,last7Day,last30Day]}"
:default-time="['00:00:00','23:59:59']" :default-time="['00:00:00','23:59:59']"
@change="getList" @change="getList"></el-date-picker>
></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="商品课时数"> <el-form-item label="商品课时数">
<el-select <el-select
...@@ -21,14 +20,12 @@ ...@@ -21,14 +20,12 @@
placeholder="请选择" placeholder="请选择"
style="width: 150px" style="width: 150px"
clearable clearable
@change="selectChange" @change="selectChange">
>
<el-option <el-option
v-for="(data,index) in watchList" v-for="(data,index) in watchList"
:key="index" :key="index"
:label="data.title" :label="data.title"
:value="data.id" :value="data.id"></el-option>
></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="渠道code"> <el-form-item label="渠道code">
...@@ -63,7 +60,13 @@ ...@@ -63,7 +60,13 @@
:row-class-name="tableRowClassName" :row-class-name="tableRowClassName"
:span-method="arraySpanMethod"> :span-method="arraySpanMethod">
<!--height="calc(100vh - 210px)"--> <!--height="calc(100vh - 210px)"-->
<el-table-column prop="periods_title" align="center" min-width="80" fixed label="期数名称"></el-table-column> <!--<el-table-column prop="periods_title" align="center" min-width="80" fixed label="期数名称"></el-table-column>-->
<el-table-column align="center" fixed label="期数名称" width="120px">
<template slot-scope="scope">
<div v-html="periodName(scope.row)"></div>
<!--{{periodName(scope.row)}}-->
</template>
</el-table-column>
<el-table-column prop="is_other" min-width="160" align="left" fixed label="渠道信息"> <el-table-column prop="is_other" min-width="160" align="left" fixed label="渠道信息">
<template slot-scope="scope"> <template slot-scope="scope">
来源:{{scope.row.is_other==0?"内部":"外部"}}<br> 来源:{{scope.row.is_other==0?"内部":"外部"}}<br>
...@@ -178,6 +181,27 @@ export default { ...@@ -178,6 +181,27 @@ export default {
}; };
}, },
methods: { methods: {
periodName(val) {
let str = '';
if (val.goods_id) {
str += `【${val.goods_id}】`
}
if (val.periods_title) {
str += `${val.periods_title}`
}
if (val.watch_num) {
str += `${val.watch_num}课时<br>`
} else {
str += `<br>`
}
if (val.start_at) {
str += `(${val.start_at.slice(5).replace('-', '')})`
}
if (val.has_watch_num || val.has_watch_num == 0) {
str += `-d${val.has_watch_num}`
}
return str
},
selectChange(value) { selectChange(value) {
this.searchFrom.watch_num = this.watchList[value].title; this.searchFrom.watch_num = this.watchList[value].title;
this.getList(); this.getList();
......
...@@ -87,7 +87,13 @@ ...@@ -87,7 +87,13 @@
@sort-change="sortMethod" @sort-change="sortMethod"
:style="{width: width+'px'}" :style="{width: width+'px'}"
fixed> fixed>
<el-table-column prop="periods_title" label="期数名称" ></el-table-column> <!--<el-table-column prop="periods_title" label="期数名称"></el-table-column>-->
<el-table-column label="期数名称" width="170px">
<template slot-scope="scope">
<div v-html="periodName(scope.row)"></div>
<!--{{periodName(scope.row)}}-->
</template>
</el-table-column>
<el-table-column <el-table-column
prop="duration_over_at" prop="duration_over_at"
label="开课看课时间" label="开课看课时间"
...@@ -134,12 +140,7 @@ ...@@ -134,12 +140,7 @@
</div> </div>
</template> </template>
<script> <script>
import { import { getPeriodsConversionListApi, getGoodsListApi, getPeriodsOtherListApi, getTeacherListApi } from "../../service/api";
getPeriodsConversionListApi,
getGoodsListApi,
getPeriodsOtherListApi,
getTeacherListApi
} from "../../service/api";
import page from "../framework/page"; import page from "../framework/page";
import { GOODSTYPE, CLASSSOURCE } from "../../util/wordbook"; import { GOODSTYPE, CLASSSOURCE } from "../../util/wordbook";
import { tipArr3 } from "../../util/tipArr"; import { tipArr3 } from "../../util/tipArr";
...@@ -242,7 +243,6 @@ export default { ...@@ -242,7 +243,6 @@ export default {
]; ];
} }
}, },
propertyList: [],
spanArr: [], spanArr: [],
contentSpanArr: [], contentSpanArr: [],
searchFrom: { searchFrom: {
...@@ -269,6 +269,27 @@ export default { ...@@ -269,6 +269,27 @@ export default {
}, },
components: { page }, components: { page },
methods: { methods: {
periodName(val) {
let str = '';
if (val.goods_id) {
str += `【${val.goods_id}】`
}
if (val.periods_title) {
str += `${val.periods_title}<br>`
} else {
str += `<br>`
}
if (val.watch_num) {
str += `${val.watch_num}课时`
}
if (val.start_at) {
str += `(${val.start_at.slice(5).replace('-', '')})`
}
if (val.has_watch_num || val.has_watch_num == 0) {
str += `-d${val.has_watch_num}`
}
return str
},
rendertip(h, { column }) { rendertip(h, { column }) {
// console.log(h) // console.log(h)
return h("span", [ return h("span", [
......
...@@ -170,13 +170,7 @@ ...@@ -170,13 +170,7 @@
</div> </div>
</template> </template>
<script> <script>
import { import { getPeriodsConversionListApi, getSourceConversionListApi, getGoodsListApi, getPeriodsOtherListApi, getTeacherListApi } from "../../service/api";
getPeriodsConversionListApi,
getSourceConversionListApi,
getGoodsListApi,
getPeriodsOtherListApi,
getTeacherListApi
} from "../../service/api";
import page from "../framework/page"; import page from "../framework/page";
import { GOODSTYPE, CLASSSOURCE,ORDERSTATUS } from "../../util/wordbook"; import { GOODSTYPE, CLASSSOURCE,ORDERSTATUS } from "../../util/wordbook";
import { tipArr3 } from "../../util/tipArr"; import { tipArr3 } from "../../util/tipArr";
...@@ -295,7 +289,6 @@ export default { ...@@ -295,7 +289,6 @@ export default {
teacher_id: "", teacher_id: "",
periods_title: "" periods_title: ""
}, },
propertyList: [],
watchList: [ watchList: [
{ id: 0, title: 5 }, { id: 0, title: 5 },
{ id: 1, title: 6 }, { id: 1, title: 6 },
......
...@@ -2,58 +2,34 @@ ...@@ -2,58 +2,34 @@
<div class="address"> <div class="address">
<section style="width:100%; height: 100%;"> <section style="width:100%; height: 100%;">
<el-form :model='form' class='demo-ruleForm' ref='form' label-width="100px" :rules='rules'> <el-form :model='form' class='demo-ruleForm' ref='form' label-width="100px" :rules='rules'>
<el-row :gutter='20'>
<el-col :span='20'>
<el-form-item prop='name' label="收货人"> <el-form-item prop='name' label="收货人">
<el-input v-model="form.name"></el-input> <el-input v-model="form.name"></el-input>
</el-form-item> </el-form-item>
</el-col>
</el-row>
<el-row :gutter='20'>
<el-col :span='20'>
<el-form-item prop='mobile' label="手机号"> <el-form-item prop='mobile' label="手机号">
<el-input v-model="form.mobile"></el-input> <el-input v-model="form.mobile"></el-input>
</el-form-item> </el-form-item>
</el-col>
</el-row>
<el-row :gutter='20' class='address'>
<el-col :span='20'>
<el-form-item prop='province' label="省"> <el-form-item prop='province' label="省">
<el-select v-model='form.province' placeholder='请选择省' @change='proChange'> <el-select v-model='form.province' placeholder='请选择省' @change='proChange'>
<el-option v-for='item in provinces' :key='item.value' :value='item.value' :label="item.label"> <el-option v-for='item in provinces' :key='item.value' :value='item.value' :label="item.label">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col>
</el-row>
<el-row :gutter='20' class='address'>
<el-col :span='20'>
<el-form-item prop='city' label="市"> <el-form-item prop='city' label="市">
<el-select v-model='form.city' placeholder='请选择市' @change='cityChange'> <el-select v-model='form.city' placeholder='请选择市' @change='cityChange'>
<el-option v-for='item in cities' :key='item.value' :value='item.value' :label="item.label"> <el-option v-for='item in cities' :key='item.value' :value='item.value' :label="item.label">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col>
</el-row>
<el-row :gutter='20' class='address'>
<el-col :span='20'>
<el-form-item prop='district' label="县/区"> <el-form-item prop='district' label="县/区">
<el-select v-model='form.district' placeholder='请选择区/县' @change='districtChange'> <el-select v-model='form.district' placeholder='请选择区/县' @change='districtChange'>
<el-option v-for='item in districts' :key='item.value' :value='item.value' :label="item.label"> <el-option v-for='item in districts' :key='item.value' :value='item.value' :label="item.label">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col>
</el-row>
<el-row :gutter='20' class='address'>
<el-col :span='20'>
<el-form-item prop='detail' label="详细地址"> <el-form-item prop='detail' label="详细地址">
<el-input placeholder='请填写详细地址' :number='true' v-model='form.detail'> <el-input placeholder='请填写详细地址' :number='true' v-model='form.detail'>
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col>
</el-row>
</el-form> </el-form>
</section> </section>
</div> </div>
...@@ -61,13 +37,15 @@ ...@@ -61,13 +37,15 @@
<script> <script>
import Address from './addr.js' import Address from './addr.js'
let type = 1 let type = 1
// let provinceValue = 2 // let provinceValue = 2
// let cityValue = 52 // let cityValue = 52
//根据apid查找对象 //根据apid查找对象
function findcity(item) { function findcity(item) {
return item.type == type; return item.type == type;
} }
function findChildren(list, value) { function findChildren(list, value) {
let filtered = list.filter((item) => { let filtered = list.filter((item) => {
return item.value === value return item.value === value
...@@ -77,6 +55,7 @@ ...@@ -77,6 +55,7 @@
// console.log(filtered) // console.log(filtered)
return filtered[0].children return filtered[0].children
} }
//筛选出各省级对象 //筛选出各省级对象
let pObj = Address.filter(findcity) let pObj = Address.filter(findcity)
...@@ -92,14 +71,14 @@ ...@@ -92,14 +71,14 @@
}, },
computed: { computed: {
cities: function () { cities: function () {
if(this.form.province){ if (this.form.province) {
return findChildren(pObj, this.form.province) return findChildren(pObj, this.form.province)
} else { } else {
return [] return []
} }
}, },
districts: function () { districts: function () {
if(this.form.city){ if (this.form.city) {
return findChildren(this.cities, this.form.city) return findChildren(this.cities, this.form.city)
} else { } else {
return [] return []
...@@ -109,12 +88,12 @@ ...@@ -109,12 +88,12 @@
data() { data() {
return { return {
rules: { rules: {
province: [{ required: true, message: '请选择省份', trigger: 'change' }], province: [{required: true, message: '请选择省份', trigger: 'change'}],
city: [{ required: true, message: '请选择城市', trigger: 'change' }], city: [{required: true, message: '请选择城市', trigger: 'change'}],
district: [{ required: true, message: '请选择区/县', trigger: 'change' }], district: [{required: true, message: '请选择区/县', trigger: 'change'}],
detail: [{ required: true, message: '请填写详细地址', trigger: 'change' }], detail: [{required: true, message: '请填写详细地址', trigger: 'change'}],
name: [{ required: true, message: '请填写收货人', trigger: 'change' }], name: [{required: true, message: '请填写收货人', trigger: 'change'}],
mobile: [{ required: true, message: '请填写手机号', trigger: 'change' }] mobile: [{required: true, message: '请填写手机号', trigger: 'change'}]
}, },
form: { form: {
province: this.province, province: this.province,
...@@ -159,7 +138,7 @@ ...@@ -159,7 +138,7 @@
// this.form.mobile = this.mobile // this.form.mobile = this.mobile
// } // }
// console.log(this.form) // console.log(this.form)
this.form={ this.form = {
province: this.province, province: this.province,
city: this.city, city: this.city,
district: this.district, district: this.district,
......
<template> <template>
<div class="sms"> <div class="admin-refresh sms">
<div class="section-search">
<el-form ref="searchFrom" :model="searchFrom" label-width="100px" inline size="small"> <el-form ref="searchFrom" :model="searchFrom" label-width="100px" inline size="small">
<el-form-item label="用户ID"> <el-form-item label="用户ID">
<el-input v-model="searchFrom.user_id" style="width: 80px"></el-input> <el-input v-model="searchFrom.user_id" style="width: 80px"></el-input>
...@@ -16,13 +17,14 @@ ...@@ -16,13 +17,14 @@
</el-form-item>--> </el-form-item>-->
<el-form-item label="期数"> <el-form-item label="期数">
<el-cascader <el-cascader
:popper-class="'refresh-cascader-multi width-480'"
style="width: 480px"
:options="goodsList" :options="goodsList"
:props="{value:'id',label:'name'}" :props="{value:'id',label:'name'}"
@active-item-change="handleItemChange" @active-item-change="handleItemChange"
@change="changePeriods" @change="changePeriods"
filterable filterable
v-model="selectedGoods" v-model="selectedGoods"></el-cascader>
></el-cascader>
</el-form-item> </el-form-item>
<el-form-item label="主题"> <el-form-item label="主题">
<el-select filterable v-model="searchFrom.theme_id" placeholder="请选择" clearable> <el-select filterable v-model="searchFrom.theme_id" placeholder="请选择" clearable>
...@@ -44,55 +46,63 @@ ...@@ -44,55 +46,63 @@
<el-button type="primary" plain @click="exportTable" v-if="$store.state.export">导出当前待发货</el-button> <el-button type="primary" plain @click="exportTable" v-if="$store.state.export">导出当前待发货</el-button>
<el-button type="primary" plain @click="exportReceiveInfoTable">按期数导出收货信息</el-button> <el-button type="primary" plain @click="exportReceiveInfoTable">按期数导出收货信息</el-button>
</el-form-item> </el-form-item>
<el-form-item v-if="$store.state.import"> <el-form-item v-if="$store.state.export">
<el-upload <el-upload
:show-file-list="false" :show-file-list="false"
:onSuccess="fileSuccess" :onSuccess="fileSuccess"
:headers="uploadHeader" :headers="uploadHeader"
:data="{param_token:param_token}" :data="{param_token:param_token}"
action="/api/admin/order/deliver/list/import" action="/api/admin/order/deliver/list/import">
>
<el-button type="success" plain>导入发货信息</el-button> <el-button type="success" plain>导入发货信息</el-button>
</el-upload> </el-upload>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-tabs v-model="searchFrom.type" type="card" @tab-click="handleClick"> </div>
<el-tabs v-model="searchFrom.type" type="card" @tab-click="handleClick" style="padding-top: 10px;background-color: #fff">
<el-tab-pane label="当前待发货" name="0"></el-tab-pane> <el-tab-pane label="当前待发货" name="0"></el-tab-pane>
<el-tab-pane label="所有待发货" name="1"></el-tab-pane> <el-tab-pane label="所有待发货" name="1"></el-tab-pane>
<el-tab-pane label="所有已发货" name="2"></el-tab-pane> <el-tab-pane label="所有已发货" name="2"></el-tab-pane>
</el-tabs> </el-tabs>
<el-table :data="deliverList" size="mini" style="width: 100%"> <el-table :data="deliverList" size="mini" style="width: 100%">
<el-table-column width="220" class="f-c" label="用户"> <el-table-column width="200" class="f-c" label="用户">
<template slot-scope="scope"> <template slot-scope="scope">
<img class="avatar" :src="scope.row.user_avatar" /> <img style="vertical-align: top" class="avatar" :src="scope.row.user_avatar" />
<span style="display: inline-block;">
{{scope.row.user_nickname}} {{scope.row.user_nickname}}
<br /> <br />
(ID:{{scope.row.user_id}}) (ID:{{scope.row.user_id}})
<br /> <br />
手机:{{scope.row.user_mobile}} 手机:{{scope.row.user_mobile}}
</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="address" label="收货地址"> <el-table-column prop="address" label="收货地址">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.receive_name}} {{scope.row.receive_name}}
<br /> <br/>
{{scope.row.receive_mobile}} {{scope.row.receive_mobile}}
<br /> <br/>
{{scope.row.province_name}}{{scope.row.city_name}}{{scope.row.area_name}}{{scope.row.address}} {{scope.row.province_name}}{{scope.row.city_name}}{{scope.row.area_name}}{{scope.row.address}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="periods_title" label="期数名称"></el-table-column> <!--<el-table-column prop="periods_title" label="期数名称"></el-table-column>-->
<el-table-column prop="periods_title" label="期数名称">
<template slot-scope="scope">
<div v-html="periodName(scope.row)"></div>
<!--{{periodName(scope.row)}}-->
</template>
</el-table-column>
<el-table-column prop="theme_name" label="主题"></el-table-column> <el-table-column prop="theme_name" label="主题"></el-table-column>
<el-table-column prop="deliver_start_at" label="预计发货开始时间"></el-table-column> <el-table-column prop="deliver_start_at" label="预计发货开始时间" width="100px"></el-table-column>
<el-table-column prop="deliver_end_at" label="预计发货结束时间"></el-table-column> <el-table-column prop="deliver_end_at" label="预计发货结束时间" width="100px"></el-table-column>
<el-table-column prop="deliver_at" label="发货时间"></el-table-column> <el-table-column prop="deliver_at" label="发货时间" width="100px"></el-table-column>
<el-table-column prop="status" label="物流状态"> <el-table-column prop="status" label="物流状态">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.status|LogisticsStatusFil}} {{scope.row.status|LogisticsStatusFil}}<br/>
<br />
<span v-if="searchFrom.type==2"> <span v-if="searchFrom.type==2">
名称:{{scope.row.express_name}} 名称:{{scope.row.express_name}}<br/>
<br />
单号:{{scope.row.express_no}} 单号:{{scope.row.express_no}}
</span> </span>
</template> </template>
...@@ -182,6 +192,27 @@ export default { ...@@ -182,6 +192,27 @@ export default {
this.init(); this.init();
}, },
methods: { methods: {
periodName(val) {
let str = '';
if (val.goods_id) {
str += `【${val.goods_id}】`
}
if (val.periods_title) {
str += `${val.periods_title}<br>`
} else {
str += `<br>`
}
if (val.watch_num) {
str += `${val.watch_num}课时`
}
if (val.start_at) {
str += `(${val.start_at.slice(5).replace('-', '')})`
}
if (val.has_watch_num || val.has_watch_num == 0) {
str += `-d${val.has_watch_num}`
}
return str
},
cancelEvent() { cancelEvent() {
this.showFlag = false; this.showFlag = false;
}, },
...@@ -402,9 +433,6 @@ export default { ...@@ -402,9 +433,6 @@ export default {
</script> </script>
<style scoped> <style scoped>
.sms {
padding: 20px 0;
}
.el-button + .el-button { .el-button + .el-button {
margin-left: 0; margin-left: 0;
/* margin-top: 10px; */ /* margin-top: 10px; */
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
:span-method="arraySpanMethod"> :span-method="arraySpanMethod">
<el-table-column min-width="180" prop="wait_join_num" align="left" fixed="left" label="期数总状况"> <el-table-column min-width="180" prop="wait_join_num" align="left" fixed="left" label="期数总状况">
<template slot-scope="scope"> <template slot-scope="scope">
期数名称:{{scope.row.title}} 期数名称:{{scope.row.title=='合计' ? '合计' : periodName(scope.row)}}
<br /> <br />
开始时间:{{scope.row.start_at}} 开始时间:{{scope.row.start_at}}
<br /> <br />
...@@ -77,6 +77,25 @@ export default { ...@@ -77,6 +77,25 @@ export default {
}; };
}, },
methods: { methods: {
periodName(val) {
let str = '';
if (val.goods_id) {
str += `【${val.goods_id}】`
}
if (val.title) {
str += `${val.title}`
}
if (val.watch_num) {
str += `${val.watch_num}课时`
}
if (val.start_at) {
str += `(${val.start_at.slice(5).replace('-', '')})`
}
if (val.has_watch_num || val.has_watch_num == 0) {
str += `-d${val.has_watch_num}`
}
return str
},
initPage() { initPage() {
getPeriodsClassCurDataApi().then(res => { getPeriodsClassCurDataApi().then(res => {
this.list = res; this.list = res;
......
This diff is collapsed.
...@@ -6,8 +6,7 @@ ...@@ -6,8 +6,7 @@
:visible.sync="newdialogObj.show" :visible.sync="newdialogObj.show"
width="70%"> width="70%">
<el-form ref="form" :model="form" label-width="120px" :rules="rules"> <el-form ref="form" :model="form" label-width="120px" :rules="rules">
<el-row>
<el-col :span="10">
<el-form-item label="商品名称" prop="goods_id"> <el-form-item label="商品名称" prop="goods_id">
<el-select v-model="form.goods_id" placeholder="请选择" @change="onOptionChange"> <el-select v-model="form.goods_id" placeholder="请选择" @change="onOptionChange">
<el-option <el-option
...@@ -18,7 +17,6 @@ ...@@ -18,7 +17,6 @@
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col>
<!-- <el-col :span="10"> <!-- <el-col :span="10">
<el-form-item label="期数名称" prop="periods_id"> <el-form-item label="期数名称" prop="periods_id">
<el-select v-model="form.periods_id" placeholder="请选择"> <el-select v-model="form.periods_id" placeholder="请选择">
...@@ -31,16 +29,13 @@ ...@@ -31,16 +29,13 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> --> </el-col> -->
</el-row>
<el-row> <el-form-item label="用户ID" prop="user_id">
<el-col :span="10">
<el-form-item label="用户ID" prop="user_id" >
<el-input width='100' v-model="form.user_id"></el-input> <el-input width='100' v-model="form.user_id"></el-input>
<el-button type="success" @click="onAddUser">+添加用户</el-button> <el-button type="success" @click="onAddUser">+添加用户</el-button>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="10"> <el-form-item label="添加推广人">
<el-form-item label="添加推广人" >
<!-- <el-input v-model="form.invite_id"></el-input> --> <!-- <el-input v-model="form.invite_id"></el-input> -->
<el-select <el-select
v-model="form.invite_id" v-model="form.invite_id"
...@@ -57,10 +52,8 @@ ...@@ -57,10 +52,8 @@
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="10">
<el-form-item label="支付类型" prop="order_type"> <el-form-item label="支付类型" prop="order_type">
<el-select v-model="form.order_type" placeholder="请选择"> <el-select v-model="form.order_type" placeholder="请选择">
<el-option <el-option
...@@ -72,16 +65,10 @@ ...@@ -72,16 +65,10 @@
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> <el-form-item label="实付金额(元)" prop="money">
<el-col :span="10">
<el-form-item label="实付金额(元)" prop="money" >
<el-input-number v-model="form.money"></el-input-number> <el-input-number v-model="form.money"></el-input-number>
</el-form-item> </el-form-item>
</el-col> <el-form-item label="支付时间" prop="pay_at">
</el-row>
<el-row>
<el-col :span="10">
<el-form-item label="支付时间" prop="pay_at" >
<el-date-picker <el-date-picker
v-model="form.pay_at" v-model="form.pay_at"
type="datetime" type="datetime"
...@@ -90,31 +77,21 @@ ...@@ -90,31 +77,21 @@
placeholder="选择日期时间"> placeholder="选择日期时间">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="10">
<el-form-item label="备注"> <el-form-item label="备注">
<el-input type="textarea" v-model="form.desc"></el-input> <el-input type="textarea" v-model="form.desc"></el-input>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="10" v-if="form.order_type!=2">
<el-form-item label="订单号"> <el-form-item label="订单号">
<el-input v-model="form.out_trade_no"></el-input> <el-input v-model="form.out_trade_no"></el-input>
</el-form-item> </el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<vue-address :province="form.province" :city="form.city" :district="form.district" :detail="form.address" :mobile="form.receive_mobile" :name="form.receive_name" @change="handlerAddressChange"> <vue-address :province="form.province" :city="form.city" :district="form.district" :detail="form.address" :mobile="form.receive_mobile" :name="form.receive_name" @change="handlerAddressChange">
</vue-address> </vue-address>
</el-col>
</el-row>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button @click="newdialogObj.show = false">取 消</el-button> <el-button @click="newdialogObj.show = false">取 消</el-button>
<el-button type="primary" @click="saveAddOrder(form)">确定</el-button> <el-button type="primary" @click="saveAddOrder(form)">确定</el-button>
</div> </div>
<el-dialog :modal="false" :visible.sync="addShow" > <el-dialog :modal="false" :visible.sync="addShow">
<el-form label-width="90px"> <el-form label-width="90px">
<!--<el-form-item label="用户id">--> <!--<el-form-item label="用户id">-->
<!--<el-input v-model="addId"></el-input>--> <!--<el-input v-model="addId"></el-input>-->
......
...@@ -35,12 +35,14 @@ ...@@ -35,12 +35,14 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="class_name" label="班级名称"> <el-table-column prop="class_name" label="班级名称"></el-table-column>
</el-table-column> <el-table-column label="期数名称" prop="periods_name" width="170px">
<el-table-column label="期数标题" prop="periods_name"> <template slot-scope="scope">
</el-table-column> <div v-html="periodName(scope.row)"></div>
<el-table-column label="商品名称" prop="goods_name"> <!--{{periodName(scope.row)}}-->
</template>
</el-table-column> </el-table-column>
<el-table-column label="商品名称" prop="goods_name"></el-table-column>
<el-table-column label="手机号" prop="mobile"> <el-table-column label="手机号" prop="mobile">
</el-table-column> </el-table-column>
<el-table-column prop="created_at" label="创建时间" sortable> <el-table-column prop="created_at" label="创建时间" sortable>
...@@ -54,19 +56,19 @@ ...@@ -54,19 +56,19 @@
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<page :nowPage="nowPage" :total="total" @pageChange="onPageChange" @sizeChange="onSizeChange" /> <page :nowPage="nowPage" :total="total" @pageChange="onPageChange" @sizeChange="onSizeChange"/>
<entrance :entranceObj="entranceObj"/> <entrance :entranceObj="entranceObj"/>
</div> </div>
</template> </template>
<script> <script>
import entrance from "./entrance"; import entrance from "./entrance";
import { getClassConfigApi ,getGoodsListApi,updateDescApi,exportExcelApi } from "../../service/api"; import {getClassConfigApi, getGoodsListApi, updateDescApi, exportExcelApi} from "../../service/api";
import page from "../framework/page"; import page from "../framework/page";
import {GOODSTYPE} from "../../util/wordbook"; import {GOODSTYPE} from "../../util/wordbook";
export default { export default {
name: "notBuyClass", name: "notBuyClass",
data() { data() {
return { return {
...@@ -78,21 +80,21 @@ export default { ...@@ -78,21 +80,21 @@ export default {
title: "无需登录入口", title: "无需登录入口",
show: false show: false
}, },
searchFrom:{ searchFrom: {
user_id:"", user_id: "",
goods_id:"", goods_id: "",
mobile:"", mobile: "",
}, },
goodList:[], goodList: [],
}; };
}, },
components: { components: {
entrance, entrance,
page page
}, },
filters:{ filters: {
filterGoods(val){ filterGoods(val) {
return '[' + GOODSTYPE[val.goods_type] + ']' + '[' +val.current_price / 100 + '元]' + val.name return '[' + GOODSTYPE[val.goods_type] + ']' + '[' + val.current_price / 100 + '元]' + val.name
} }
}, },
mounted() { mounted() {
...@@ -101,6 +103,29 @@ export default { ...@@ -101,6 +103,29 @@ export default {
}, },
methods: { methods: {
periodName(val) {
let str = '';
if (!val.periods_name) {
str = '-'
} else {
if (val.goods_id) {
str += `【${val.goods_id}】`
}
if (val.periods_name) {
str += `${val.periods_name}<br>`
}
if (val.watch_num) {
str += `${val.watch_num}课时`
}
if (val.start_at) {
str += `(${val.start_at.slice(5).replace('-', '')})`
}
if (val.has_watch_num || val.has_watch_num == 0) {
str += `-d${val.has_watch_num}`
}
}
return str
},
onPageChange(val) { onPageChange(val) {
this.nowPage = val; this.nowPage = val;
this.getList(); this.getList();
...@@ -116,29 +141,29 @@ export default { ...@@ -116,29 +141,29 @@ export default {
page: this.nowPage page: this.nowPage
}; };
// 搜索筛选 // 搜索筛选
if(this.searchFrom.user_id){ if (this.searchFrom.user_id) {
json.user_id=this.searchFrom.user_id json.user_id = this.searchFrom.user_id
} }
if(this.searchFrom.goods_id){ if (this.searchFrom.goods_id) {
json.goods_id=this.searchFrom.goods_id json.goods_id = this.searchFrom.goods_id
} }
if(this.searchFrom.nickname){ if (this.searchFrom.nickname) {
json.nickname=this.searchFrom.nickname json.nickname = this.searchFrom.nickname
} }
if(this.searchFrom.mobile){ if (this.searchFrom.mobile) {
json.mobile=this.searchFrom.mobile json.mobile = this.searchFrom.mobile
} }
getClassConfigApi(json).then(res => { getClassConfigApi(json).then(res => {
this.total = res.total; this.total = res.total;
this.configList=res.list; this.configList = res.list;
}); });
}, },
getGoodsOption(){ getGoodsOption() {
let json = { let json = {
page: 1, page: 1,
limit: 100 limit: 100
}; };
getGoodsListApi(json).then(res=>{ getGoodsListApi(json).then(res => {
this.goodList = res.list; this.goodList = res.list;
}) })
}, },
...@@ -146,15 +171,15 @@ export default { ...@@ -146,15 +171,15 @@ export default {
this.$prompt('', '编辑备注', { this.$prompt('', '编辑备注', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
inputType:'textarea', inputType: 'textarea',
inputValue: desc || '' inputValue: desc || ''
}).then(({ value }) => { }).then(({value}) => {
this.$confirm('确定保存?', '提示', { this.$confirm('确定保存?', '提示', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}).then(()=>{ }).then(() => {
updateDescApi({desc: value},id).then(res=>{ updateDescApi({desc: value}, id).then(res => {
this.$message({ this.$message({
type: 'success', type: 'success',
message: '编辑备注成功' message: '编辑备注成功'
...@@ -164,48 +189,51 @@ export default { ...@@ -164,48 +189,51 @@ export default {
}); });
}) })
}, },
exportTable(){ exportTable() {
let json = {}; let json = {};
if(this.searchFrom.user_id){ if (this.searchFrom.user_id) {
json.user_id=this.searchFrom.user_id json.user_id = this.searchFrom.user_id
} }
if(this.searchFrom.goods_id){ if (this.searchFrom.goods_id) {
json.goods_id=this.searchFrom.goods_id json.goods_id = this.searchFrom.goods_id
} }
if(this.searchFrom.mobile){ if (this.searchFrom.mobile) {
json.mobile=this.searchFrom.mobile json.mobile = this.searchFrom.mobile
} }
if(this.searchFrom.nickname){ if (this.searchFrom.nickname) {
json.nickname=this.searchFrom.nickname json.nickname = this.searchFrom.nickname
} }
exportExcelApi('/api/admin/user/receive/course/log/export',json,'扫码入课列表') exportExcelApi('/api/admin/user/receive/course/log/export',json,'扫码入课列表')
}, },
} }
}; };
</script> </script>
<style scoped lang="less"> <style scoped lang="less">
.not_buy { .not_buy {
.head { .head {
margin-bottom: 10px; margin-bottom: 10px;
} }
width: 100%; width: 100%;
padding: 20px 0; padding: 20px 0;
.page-div { .page-div {
text-align: center; text-align: center;
padding-top: 20px; padding-top: 20px;
} }
} }
.avatar { .avatar {
width: 50px; width: 50px;
min-width:50px !important; min-width: 50px !important;
height: 50px; height: 50px;
border-radius: 50%; border-radius: 50%;
line-height:1; line-height: 1;
} }
</style> </style>
<style> <style>
.userInfo >div{ .userInfo > div {
display: flex; display: flex;
flex-flow: row nowrap; flex-flow: row nowrap;
justify-content: flex-start; justify-content: flex-start;
......
This diff is collapsed.
<template> <template>
<div class="admin-refresh" v-loading="loading"> <div class="admin-refresh" v-loading="loading">
<div class="section-search search-single"> <div class="section-search search-single">
<el-form ref="searchFrom" :model="searchFrom" label-width="80px" inline> <el-form label-width="80px" inline>
<el-form-item> <el-form-item>
<!--<el-cascader
style="width: 280px" placeholder="选择标签"
:props="searchProps" clearable></el-cascader>-->
<el-input placeholder="输入标签名搜索" v-model="filterText"></el-input> <el-input placeholder="输入标签名搜索" v-model="filterText"></el-input>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<div class="search-btn-wrapper"> <div class="search-btn-wrapper">
<!--<el-button @click="onSearch" type="primary" plain>搜索</el-button>--> <!--<el-button @click="onSearch" type="primary" plain>搜索</el-button>-->
<el-button @click="dialogToggle" type="warning" plain>高级搜索</el-button> <el-button @click="dialogUser.show = !dialogUser.show;" type="warning" plain>高级搜索</el-button>
<!--<el-button v-if="!$store.state.readonly" @click="onAdd" type="success" plain>新增标签</el-button>--> <!--<el-button v-if="!$store.state.readonly" @click="onAdd" type="success" plain>新增标签</el-button>-->
</div> </div>
</el-form-item> </el-form-item>
...@@ -23,7 +19,7 @@ ...@@ -23,7 +19,7 @@
<el-tree <el-tree
:data="treeData" :data="treeData"
node-key="id" ref="tagTree" node-key="id" ref="tagTree"
:props="tagProps" :props="{children: 'children', label: 'name'}"
:indent="40" :indent="40"
@node-expand="tagExpand" @node-expand="tagExpand"
@node-collapse="tagCollapse" @node-collapse="tagCollapse"
...@@ -50,37 +46,46 @@ ...@@ -50,37 +46,46 @@
</el-tree> </el-tree>
</div> </div>
<el-dialog :title="dialog.title" :visible.sync="dialog.show" width="800px" title="高级搜索"> <el-dialog :title="dialog.title" :visible.sync="dialog.show" width="500px">
<el-form ref="dialogForm" :rules="dialog.form.rules" :model="dialog.form" label-width="100px">
<el-form-item label="ID:" prop="id" style="display: none;">
<el-input v-model="dialog.form.id" maxlength="10" type="text"></el-input>
</el-form-item>
<el-form-item label="PID:" prop="pid" style="display: none;">
<el-input v-model="dialog.form.pid" maxlength="10" type="text"></el-input>
</el-form-item>
<el-form-item label="标签名称:" prop="name">
<el-input v-model="dialog.form.name" maxlength="10" type="text"></el-input>
</el-form-item>
<el-form-item label="标签备注:" prop="cover">
<el-input v-model="dialog.form.cover" maxlength="50" type="textarea" :rows="3"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogToggle">取消</el-button>
<el-button type="primary" @click="dialogSave">确定</el-button>
</span>
</el-dialog>
<el-dialog :visible.sync="dialogUser.show" width="800px" title="高级搜索">
<div style="display: flex;margin-bottom: 20px;"> <div style="display: flex;margin-bottom: 20px;">
<el-button style="margin-right: 20px; width: 70px;" type="primary" v-if="!$store.state.readonly && $store.state.export" plain :disabled="!tableData.length" @click="exportExcel">导出</el-button> <el-button style="margin-right: 20px; width: 70px;" type="primary" v-if="!$store.state.readonly && $store.state.export" plain :disabled="!tableData.length" @click="exportExcel">导出</el-button>
<el-cascader <el-cascader
style="width: calc(100% - 90px)" placeholder="选择标签" clearable @change="conditionsChange" style="width: calc(100% - 90px)" placeholder="选择标签" clearable @change="conditionsChange"
:options="treeDataOrigin" :props="{ value: 'id', label: 'name', multiple: true, checkStrictly: true }"></el-cascader> :options="treeDataOrigin" :props="{ value: 'id', label: 'name', multiple: true, checkStrictly: true }"></el-cascader>
</div> </div>
<el-table :data="tableData" border> <el-table :data="tableData" border>
<el-table-column className="f-c" label="用户"> <el-table-column className="f-c" label="用户">
<template slot-scope="scope"> <template slot-scope="scope">
<img class="avatar" :src="scope.row.avatar">{{scope.row.nickname}}<br>(ID:{{scope.row.user_id}}) <img class="avatar" :src="scope.row.avatar">{{scope.row.nickname}}<br>(ID:{{scope.row.user_id}})
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="baby_name" label="宝宝名称"></el-table-column> <el-table-column prop="baby_name" label="宝宝名称"></el-table-column>
<el-table-column prop="birthday" label="宝宝生日"></el-table-column> <el-table-column prop="birthday" label="宝宝生日"></el-table-column>
<el-table-column prop="sex" label="宝宝性别" :formatter="sexFormatter"></el-table-column> <el-table-column prop="sex" label="宝宝性别" :formatter="sexFormatter"></el-table-column>
<el-table-column prop="mobile" label="手机号码"></el-table-column> <el-table-column prop="mobile" label="手机号码"></el-table-column>
<!--<el-table-column label="操作" v-if="!$store.state.readonly" width="100">
<template slot-scope="scope">
<el-button size="mini" plain type="primary" @click="onEdit(scope.row)">编辑</el-button>
</template>
</el-table-column>-->
</el-table> </el-table>
<page :total="total" :limit="limit" @pageChange="onPageChange" @sizeChange="onSizeChange"/> <page :total="total" :limit="limit" @pageChange="onPageChange" @sizeChange="onSizeChange"/>
<!--<span slot="footer" class="dialog-footer">
<el-button @click="dialogToggle">取消</el-button>
<el-button type="primary" @click="dialogSave">确定</el-button>
</span>-->
</el-dialog> </el-dialog>
</div> </div>
</template> </template>
...@@ -96,28 +101,15 @@ ...@@ -96,28 +101,15 @@
conditions: [], conditions: [],
filterText: '', filterText: '',
tagProps: {
children: 'children',
label: 'name'
},
tagExpanded: [0], tagExpanded: [0],
tagExpandedWait: '', tagExpandedWait: '',
searchFrom: {
id: '',
name: '',
mobile: '',
id_card: '',
type: '',
status: '',
start_in: '',
over_in: ''
},
startTime: [],
tableData: [], tableData: [],
treeData: [], treeData: [],
treeDataOrigin: [], treeDataOrigin: [],
dialogUser: {
show: false
},
dialog: { dialog: {
title: '', title: '',
show: false, show: false,
...@@ -170,19 +162,18 @@ ...@@ -170,19 +162,18 @@
this.getUserData() this.getUserData()
}, },
getUserData(){ getUserData(){ // 搜索用户
let json = { let json = {
conditions: JSON.stringify(this.conditions), conditions: JSON.stringify(this.conditions),
limit: this.limit, limit: this.limit,
page: this.nowPage page: this.nowPage
} }
getTagUserApi(json).then(res=>{ getTagUserApi(json).then(res=>{
this.tableData = res.list this.tableData = res.list
}) })
}, },
filterNode(value, data) { filterNode(value, data) { // 搜索标签
if (!value) return true; if (!value) return true;
return data.name.indexOf(value) !== -1; return data.name.indexOf(value) !== -1;
}, },
...@@ -236,21 +227,20 @@ ...@@ -236,21 +227,20 @@
}); });
}, },
tagExpand(data, node, el) { tagExpand(data, node, el) { // 标签展开(记录树的状态)
//console.log(node) //console.log(node)
if (node.expanded) { if (node.expanded) {
this.tagExpanded.push(node.data.id) this.tagExpanded.push(node.data.id)
} }
}, },
tagCollapse(data, node, el) { // 标签收起(记录树的状态)
tagCollapse(data, node, el) {
//console.log(node) //console.log(node)
if (node.expanded) { if (node.expanded) {
this.tagExpanded.splice(this.tagExpanded.findIndex(item => item == node.data.id), 1) this.tagExpanded.splice(this.tagExpanded.findIndex(item => item == node.data.id), 1)
} }
}, },
getData() { getData() { // 获取标签
getTagApi().then(res => { getTagApi().then(res => {
this.treeDataOrigin = res; this.treeDataOrigin = res;
this.treeData = [{ this.treeData = [{
...@@ -263,7 +253,6 @@ ...@@ -263,7 +253,6 @@
weight: 0, weight: 0,
}] }]
}); });
}, },
onAdd(node) { onAdd(node) {
...@@ -278,10 +267,9 @@ ...@@ -278,10 +267,9 @@
}); });
}, },
onEdit(node,data) { onEdit(node, data) {
console.log(el) //console.log(node)
console.log(node) //console.log(data)
console.log(data)
let item = node.data; let item = node.data;
this.dialogToggle(); this.dialogToggle();
this.dialogReset(); this.dialogReset();
...@@ -299,7 +287,7 @@ ...@@ -299,7 +287,7 @@
}, },
conditionsChange(val){ conditionsChange(val){
console.log(val); //console.log(val);
let arr = []; let arr = [];
if(val.length) { if(val.length) {
val.forEach(v => { val.forEach(v => {
......
...@@ -550,7 +550,7 @@ ...@@ -550,7 +550,7 @@
<style scoped lang="less"> <style scoped lang="less">
@import "../../util/public"; @import "../../util/public";
.user{ .user{
height: 100%; /*height: 100%;*/
overflow: auto; overflow: auto;
padding: 20px 0; padding: 20px 0;
.btn-content{ .btn-content{
......
This diff is collapsed.
...@@ -25,7 +25,8 @@ ...@@ -25,7 +25,8 @@
<div class="title" style="width:8%"> <div class="title" style="width:8%">
<div class="header bg-h">期数</div> <div class="header bg-h">期数</div>
<div> <div>
{{data.title}} <!--{{data.title}}-->
<div v-html="periodName(data)"></div>
</div> </div>
</div> </div>
<div class="over_work" style="background-color: #fffbe4"> <div class="over_work" style="background-color: #fffbe4">
...@@ -563,6 +564,29 @@ ...@@ -563,6 +564,29 @@
} }
}, },
methods:{ methods:{
periodName(val) {
let str = '';
if (!val.title) {
str = '-'
} else {
if (val.goods_id) {
str += `【${val.goods_id}】`
}
if (val.title) {
str += `${val.title}<br>`
}
if (val.watch_num) {
str += `${val.watch_num}课时`
}
if (val.start_at) {
str += `(${val.start_at.slice(5).replace('-', '')})`
}
if (val.has_watch_num || val.has_watch_num == 0) {
str += `-d${val.has_watch_num}`
}
}
return str
},
formatTime(date){ formatTime(date){
let year = date.getFullYear(); let year = date.getFullYear();
let Month = date.getMonth()+1; let Month = date.getMonth()+1;
......
This diff is collapsed.
...@@ -147,7 +147,12 @@ ...@@ -147,7 +147,12 @@
<div v-if='scope.row.user_id === 0'>用户未绑定</div> <div v-if='scope.row.user_id === 0'>用户未绑定</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="periods_title" label="期数"> <!--<el-table-column prop="periods_title" label="期数名称"></el-table-column>-->
<el-table-column prop="periods_title" label="期数名称" width="150px">
<template slot-scope="scope">
<div v-html="periodName(scope.row)"></div>
<!--{{periodName(scope.row)}}-->
</template>
</el-table-column> </el-table-column>
<el-table-column prop="goods_name" label="商品名称"> <el-table-column prop="goods_name" label="商品名称">
</el-table-column> </el-table-column>
...@@ -516,6 +521,29 @@ export default { ...@@ -516,6 +521,29 @@ export default {
}); });
}, },
methods: { methods: {
periodName(val) {
let str = '';
if (!val.periods_title) {
str = '-'
} else {
if (val.goods_id) {
str += `【${val.goods_id}】`
}
if (val.periods_title) {
str += `${val.periods_title}<br>`
}
if (val.watch_num) {
str += `${val.watch_num}课时`
}
if (val.start_at) {
str += `(${val.start_at.slice(5).replace('-', '')})`
}
if (val.has_watch_num || val.has_watch_num == 0) {
str += `-d${val.has_watch_num}`
}
}
return str
},
initClearOtherOrder(id){ initClearOtherOrder(id){
this.$confirm('确认清除?', '提示', { this.$confirm('确认清除?', '提示', {
confirmButtonText: '确定', confirmButtonText: '确定',
......
...@@ -1305,7 +1305,7 @@ export const getStaffRecordApi = function (json) { ...@@ -1305,7 +1305,7 @@ export const getStaffRecordApi = function (json) {
// 系统配置设备 // 系统配置设备
export const getTeacherTypeListApi = function (json) { export const getTeacherTypeListApi = function (json) {
return Vue.prototype.$fetch(`${_baseUrl}api/admin/teacher/type/list`, json) return Vue.prototype.$fetch(`${_baseUrl}api/admin/teacher/type/list`, json)
}; };
export const postTeacherTypeListApi = function (json) { export const postTeacherTypeListApi = function (json) {
return Vue.prototype.$post(`${_baseUrl}api/admin/teacher/type/add`, json) return Vue.prototype.$post(`${_baseUrl}api/admin/teacher/type/add`, json)
}; };
...@@ -1316,3 +1316,7 @@ export const postMediaConvertApi = function (json) { ...@@ -1316,3 +1316,7 @@ export const postMediaConvertApi = function (json) {
return Vue.prototype.$post(`${_baseUrl}api/public/media/convert`, json) return Vue.prototype.$post(`${_baseUrl}api/public/media/convert`, json)
}; };
///api/public/media/convert ///api/public/media/convert
// 最近更新时间
export const getUpdateTimeApi = function () {
return Vue.prototype.$fetch(`${_baseUrl}api/admin/get/report/time`)
};
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment