Merge branch 'dev'

* dev:
  cxw-010203
  zx
  zx
  zx
master
xiaowen 3 years ago
commit c1f485f883

@ -1,2 +1,2 @@
NODE_ENV = "production"
VUE_APP_URL="http://121.41.171.43:7340/"
VUE_APP_URL="https://api.sws010.com"

@ -55,7 +55,8 @@ export default defineComponent({
//
handlerSuccess(response, file, fileList) {
this.fileList = fileList || [];
this.$emit("change", this.fileList)
const data = response.data;
this.$emit("change", data)
},
//
handlerError() {},

@ -1,7 +1,6 @@
export function statusFormatter(row) {
switch(row.isDefault) {
case true: return '是';
case false: return '否';
default: return '';
default: return '否';
}
};

@ -91,6 +91,7 @@ export default defineComponent({
let obj = Object.assign({pageNum: this.pagination.current,pageSize: this.pagination.pageSize})
this.proxy.$post("/rewardRuleTemplate/list", obj).then(res => {
const data = res.data;
console.log(data)
this.tableData.data = data;
}).catch(() => {});
},

@ -5,4 +5,10 @@ export function statusFormatter(row) {
case 3: return '已终止';
default: return '';
}
};
};
export function groupFormatter(row) {
switch(row.groupId) {
case 0: return '未分组'
default: return row.groupId;
}
}

@ -35,18 +35,23 @@
@selection-change="handleSelect"
:header-cell-style="{background: '#EEE'}">
<el-table-column type="selection" width="55" />
<el-table-column prop="title" label="素材" width="360"></el-table-column>
<el-table-column prop="title" label="素材" width="240"></el-table-column>
<el-table-column prop="tag" label="标签" width="240">
<template #default="scope">
<el-tag style="margin-right: 8px" v-for="(item,index) in scope.row.tag" :key="index">
{{item == 1?'媒体评测':item == 2?'产品宣传':'其他'}}
<el-tag style="margin-right: 8px" v-for="(item,index) in scope.row.tagList" :key="index">
{{item.title}}
</el-tag>
</template>
</el-table-column>
<el-table-column prop="set" label="分组" :formatter="statusFormatter"></el-table-column>
<el-table-column prop="series" label="车型" :formatter="statusFormatter"></el-table-column>
<el-table-column prop="info" label="描述"></el-table-column>
<el-table-column prop="time" label="上传时间"></el-table-column>
<el-table-column prop="groupId" label="分组" :formatter="groupFormatter"></el-table-column>
<el-table-column prop="brandList" label="车型">
<template #default="scope">
<el-tag style="margin-right: 8px" v-for="(item,index) in scope.row.brandList" :key="index">
{{item.name}}
</el-tag>
</template>
</el-table-column>
<el-table-column prop="creatAt" label="上传时间"></el-table-column>
<el-table-column prop="action" label="操作" fixed="right" width="240">
<template #default="scope">
<el-link type="primary" @click="goEdit(scope.row.id)"></el-link>
@ -68,7 +73,7 @@
<script>
import {defineComponent, reactive, watch, getCurrentInstance} from 'vue'
import {statusFormatter} from './config.js'
import {groupFormatter} from './config.js'
export default defineComponent({
name: 'v-questList',
setup() {
@ -90,7 +95,7 @@ export default defineComponent({
form,proxy,
tableData,
pagination,
statusFormatter
groupFormatter
}
},
mounted() {
@ -107,6 +112,7 @@ export default defineComponent({
let obj = Object.assign({pageNum: this.pagination.current,pageSize: this.pagination.pageSize})
this.proxy.$post("/reference/list", obj).then(res => {
const data = res.data
console.log(data.records)
this.tableData.data = data.records;
this.pagination.total = data.total
}).catch(() => {});
@ -134,7 +140,10 @@ export default defineComponent({
'删除', //
{type: 'warning'}
).then(() => {
this.$message.success('删除成功')
this.proxy.$post("/reference/del", {id: id}).then(res => {
this.getData();
this.$message.success(res.data);
}).catch(() => {});
}).catch(() => {})
}
}

@ -5,6 +5,7 @@
<el-form-item label="分组" style="width: 80%">
<el-select v-model="form.groupId" placeholder="请选择">
<el-option :value="0" label="不分组"></el-option>
<el-option v-for="(item) in groupData" :key="item.id" :value="item.id" :label="item.name"></el-option>
</el-select>
</el-form-item>
<el-form-item label="车系" style="width: 80%">
@ -31,7 +32,7 @@
</el-checkbox-group>
</el-form-item>
<el-form-item label="素材描述" style="width: 80%">
<el-input type="textarea" v-model="form.description" />
<el-input type="textarea" v-model="form.title" />
</el-form-item>
<el-form-item label="素材内容" style="width: 100%">
<uploadFile @change="handlerUpload" :config="{ limit: 1, accept: '.jpg, .jpeg, .png, .gif'}">
@ -57,15 +58,19 @@ export default defineComponent({
const form = reactive({
groupId: 0,
title: '',
type: undefined,
tagList: [],
brandList: [],
coverUrl: '',
fileUrl: '',
});
const tagData = ref([]);
const brandData = ref([]);
const groupData = ref([]);
const { proxy } = getCurrentInstance();
return {
form,proxy,
tagData,brandData,
tagData,brandData,groupData,
activeId
}
},
@ -80,13 +85,19 @@ export default defineComponent({
this.proxy.$post("/brand/list", {}).then(res => {
this.brandData = res.data.records;
}).catch(() => {});
this.proxy.$post("/referenceGroup/list", {}).then(res => {
this.groupData = res.data.records;
}).catch(() => {});
},
confirm() {
this.$router.go(-1);
this.proxy.$post("/reference/add", this.form).then(res => {
this.$message.success(res.data)
this.$router.go(-1);
}).catch(() => {});
},
//
handlerUpload(data) {
console.log(data)
this.form.fileUrl = data.fileUrl
}
}
})

@ -15,7 +15,7 @@
</el-form-item>
</el-form>
<template #reference>
<el-button size="default" type="primary" @click="visible = true">添加分组</el-button>
<el-button size="default" type="primary" @click="visible = true;setForm.name=''">添加分组</el-button>
</template>
</el-popover>
</div>
@ -46,6 +46,13 @@
:total="pagination.total"
/>
</div>
<el-dialog v-model="editVisible" width="30%" title="重命名">
<el-input v-model="setForm.name" placeholder="请输入分组名"></el-input>
<template #footer>
<el-button @click="editVisible = false;setForm=''">取消</el-button>
<el-button @click="editConfirm" type="primary">确定</el-button>
</template>
</el-dialog>
</div>
</template>
@ -73,12 +80,14 @@ export default defineComponent({
name: ''
})
const visible = ref(false);
const editVisible = ref(false);
const activeId = ref(false);
return {
form,setForm,proxy,
tableData,
pagination,
statusFormatter,
visible
visible,editVisible,activeId
}
},
mounted() {
@ -103,7 +112,16 @@ export default defineComponent({
},
handlerEdit(value) {
this.activeId = value
this.editVisible = true;
},
editConfirm() {
let obj = Object.assign(this.setForm, {id: this.activeId})
this.proxy.$post("/referencegroup/upd", obj).then(res => {
this.getData();
this.editVisible = false;
this.$message.success(res.data)
}).catch(() => {});
},
//
addConfirm() {

@ -1,8 +1,8 @@
export function statusFormatter(row) {
switch(row.status) {
case 1: return '未开始';
case 2: return '进行中';
case 3: return '已终止';
case 0: return '未上线';
case 1: return '已上线';
case 2: return '已结束';
default: return '';
}
};

@ -38,24 +38,31 @@
</div>
<div class="area-table">
<el-table :data="tableData.data" size="default" border :header-cell-style="{background: '#EEE'}">
<el-table-column prop="title" label="任务标题" width="360"></el-table-column>
<el-table-column prop="title" label="任务标题" width="240"></el-table-column>
<el-table-column prop="brandList" label="车型" width="240">
<template #default="scope">
<el-tag style="margin-right: 8px" v-for="(item,index) in scope.row.brandList" :key="index">
{{item.name}}
</el-tag>
</template>
</el-table-column>
<el-table-column prop="tagList" label="标签" width="240">
<template #default="scope">
<el-tag style="margin-right: 8px" v-for="(item,index) in scope.row.tagList" :key="index">
{{item == 1?'媒体评测':item == 2?'产品宣传':'其他'}}
{{item.title}}
</el-tag>
</template>
</el-table-column>
<el-table-column prop="status" label="状态" :formatter="statusFormatter"></el-table-column>
<el-table-column prop="action" label="操作" fixed="right" width="240">
<template #default="scope">
<div v-if="scope.row.status == 1">
<div v-if="scope.row.status == 0">
<el-link type="primary" @click="goEdit(scope.row.id)"></el-link>
</div>
<div v-else>
<el-link type="primary" style="margin-right: 8px">查看</el-link>
<el-link type="primary" style="margin-right: 8px">传播效果</el-link>
<el-link v-if="scope.row.status == 2" type="danger" style="margin-right: 8px"></el-link>
<el-link v-if="scope.row.status == 1" type="danger" style="margin-right: 8px"></el-link>
</div>
</template>
</el-table-column>
@ -112,7 +119,6 @@ export default defineComponent({
let obj = Object.assign({pageNum: this.pagination.current,pageSize: this.pagination.pageSize})
this.proxy.$post("/task/list", obj).then(res => {
const data = res.data
console.log(data.records)
this.tableData.data = data.records;
this.pagination.total = data.total
}).catch(() => {});

@ -0,0 +1,3 @@
export function valueFormatter(row) {
return row.min +' 至 '+ row.max
};

@ -1,7 +1,7 @@
<template>
<div class="main-content">
<div class="form-area">
<el-form size="default" :model="form" label-width="120px">
<el-form size="default" :model="form" label-width="90px">
<el-form-item label="任务标题" style="width: 80%">
<el-input placeholder="请输入" v-model="form.title" />
</el-form-item>
@ -16,7 +16,7 @@
<el-input placeholder="请输入" type="textarea" v-model="form.subtitle" />
</el-form-item>
<el-form-item label="时间" style="width: 80%">
<el-date-picker format="YYYY-MM-DD HH:MM:SS" @change="timeChange" v-model="selTime" type="daterange"></el-date-picker>
<el-date-picker value-format="YYYY-MM-DD HH:mm:ss" @change="timeChange" v-model="selTime" type="daterange"></el-date-picker>
</el-form-item>
<el-form-item label="标签类别">
<el-checkbox-group v-model="form.tagList">
@ -40,9 +40,11 @@
<el-icon class="img-upload"><Plus /></el-icon>
</uploadFile>
</el-form-item>
<el-form-item label="素材">
</el-form-item>
<el-form-item label="素材"></el-form-item>
<el-transfer style="padding:0px 0px 16px 30px;text-align: left; display: inline-block"
v-model="form.referenceList" :titles="['素材列表','已选素材']"
:data="refData" :props="{key: 'id',label: 'title'}">
</el-transfer>
<el-form-item label="教程">
</el-form-item>
@ -52,8 +54,8 @@
</el-option>
</el-select>
<el-table :data="ruleTable.data" border style="margin-top: 16px">
<el-table-column prop="teleport" label="传播值"></el-table-column>
<el-table-column prop="point" label="奖励积分"></el-table-column>
<el-table-column prop="id" label="传播值" :formatter="valueFormatter"></el-table-column>
<el-table-column prop="reward" label="奖励积分"></el-table-column>
</el-table>
</el-form-item>
<el-form-item>
@ -66,6 +68,7 @@
<script>
import {defineComponent, reactive, ref, getCurrentInstance} from 'vue'
import {valueFormatter} from './config.js'
export default defineComponent({
name: 'v-questRelease',
setup() {
@ -87,13 +90,14 @@ export default defineComponent({
const tagData = ref([]);
const brandData = ref([]);
const ruleData = ref([]);
const refData = ref([]);
const { proxy } = getCurrentInstance();
const ruleTable = reactive({
data: []
});
return {
form,proxy,selTime,
tagData,brandData,ruleData,
form,proxy,selTime,valueFormatter,
tagData,brandData,ruleData,refData,
ruleTable,
activeId
}
@ -113,6 +117,9 @@ export default defineComponent({
this.proxy.$post("/rewardRuleTemplate/list", {}).then(res => {
this.ruleData = res.data;
}).catch(() => {});
this.proxy.$post("/reference/list", {}).then(res => {
this.refData = res.data.records;
}).catch(() => {});
},
selectAll(value) {
if(value == true) {
@ -122,8 +129,8 @@ export default defineComponent({
}
},
ruleChange(value) {
this.proxy.$post("/rewardRuleTemplate/list", {id: value}).then(res => {
// console.log(res.data)
this.proxy.$post("/rewardRuleTemplate/detail", {id: value}).then(res => {
this.ruleTable.data = res.data.ruleList
}).catch(() => {});
},
confirm() {
@ -138,7 +145,7 @@ export default defineComponent({
},
handlerUpload() {
}
},
}
})
</script>

@ -9,7 +9,7 @@
<el-radio-group v-model="form.type">
<el-radio :label="1">视频</el-radio>
<el-radio :label="2">图片</el-radio>
<el-radio :label="3"></el-radio>
<el-radio :label="3"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="上传封面">
@ -56,7 +56,7 @@
import '@wangeditor/editor/dist/css/style.css'
import { onBeforeUnmount, shallowRef, onMounted } from 'vue'
import { Editor, Toolbar } from '@wangeditor/editor-for-vue'
import {defineComponent, reactive} from 'vue'
import {defineComponent, reactive, getCurrentInstance} from 'vue'
export default defineComponent({
name: 'v-questRelease',
components: { Editor, Toolbar },
@ -67,9 +67,10 @@ export default defineComponent({
const form = reactive({
title: '',
type: 1,
content: '',
content: '<p>请在此输入内容</p>',
cover:''
});
const { proxy } = getCurrentInstance();
/////////////
const editorRef = shallowRef()
// onMounted(() => { // ajax
@ -79,7 +80,7 @@ export default defineComponent({
// })
//
const toolbarConfig = {}
const editorConfig = { placeholder: '请输入内容...' }
const editorConfig = {}
//
onBeforeUnmount(() => {
const editor = editorRef.value
@ -91,7 +92,7 @@ export default defineComponent({
}
/////////////
return {
form,
form,proxy,
activeId,
editorRef, mode: 'simple', toolbarConfig, editorConfig, handleCreated
}
@ -101,10 +102,13 @@ export default defineComponent({
},
methods: {
confirm() {
this.$router.go(-1);
this.proxy.$post("/topicActivity/add", this.form).then(res => {
this.$message.success(res.data);
this.$router.go(-1);
}).catch(() => {});
},
handlerUpload() {
}
}
})

@ -2,7 +2,7 @@ export function statusFormatter(row) {
switch(row.type) {
case 1: return '视频';
case 2: return '图片';
case 3: return '文';
case 3: return '';
default: return '';
}
};

@ -97,7 +97,10 @@ export default defineComponent({
'删除', //
{type: 'warning'}
).then(() => {
this.$message.success('删除成功')
this.proxy.$post("/topicActivity/del", {id: id}).then(res => {
this.getData()
this.$message.success(res.data)
}).catch(() => {});
}).catch(() => {})
}
}

Loading…
Cancel
Save