|
|
@ -6,20 +6,22 @@ import { Plus, Minus } from '@element-plus/icons-vue' |
|
|
|
import CustomEditor from '@/components/common/CustomEditor.vue' |
|
|
|
|
|
|
|
const emits = defineEmits(['closeBox']) |
|
|
|
const props = defineProps(['uid', 'user_no', 'gold', 'diamonds', 'pid', 'channel_name']) |
|
|
|
const props = defineProps(['user_no', 'gold', 'sendMode']) |
|
|
|
const data = reactive({ |
|
|
|
options: [ |
|
|
|
{ label: '金币', value: 1 }, |
|
|
|
{ label: '钻石', value: 2 }, |
|
|
|
{ label: '点券', value: 3 }, |
|
|
|
{ label: '道具', value: 4 }, |
|
|
|
// { label: '钻石', value: 2 }, |
|
|
|
// { label: '点券', value: 3 }, |
|
|
|
// { label: '道具', value: 4 }, |
|
|
|
] as any[], |
|
|
|
form: { |
|
|
|
recipient: [parseInt(props.user_no)], |
|
|
|
user_no: props.user_no, |
|
|
|
recipient: '[]', |
|
|
|
append: [] as any[], //[{num:2,type:1}] |
|
|
|
title: [''], |
|
|
|
content: [''], |
|
|
|
timing: '', |
|
|
|
send_mode: props.sendMode, // 0: 群发,1:指定玩家 |
|
|
|
}, |
|
|
|
emailNum: 1, |
|
|
|
}) |
|
|
@ -60,15 +62,20 @@ const onSubmit = async () => { |
|
|
|
data.form.append[index].num = parseInt(data.form.append[index].num) |
|
|
|
} |
|
|
|
|
|
|
|
const params = { |
|
|
|
user_id: props.uid, |
|
|
|
recipient: JSON.stringify(data.form.recipient), |
|
|
|
let params = { |
|
|
|
type: data.form.send_mode, |
|
|
|
title: data.form.title, |
|
|
|
content: data.form.content, |
|
|
|
timing: data.form.timing, |
|
|
|
type: 2, |
|
|
|
timing: '', |
|
|
|
append: JSON.stringify(data.form.append), |
|
|
|
recipient: '[]', |
|
|
|
} |
|
|
|
|
|
|
|
//单体 |
|
|
|
if (data.form.send_mode == 2) { |
|
|
|
params.recipient = JSON.stringify([parseInt(props.user_no)]) |
|
|
|
} |
|
|
|
|
|
|
|
const respond = await request.post('/person/sendEmail', params) |
|
|
|
if (respond.code != 0) { |
|
|
|
ElMessage.error(respond.msg) |
|
|
@ -82,20 +89,28 @@ const onSubmit = async () => { |
|
|
|
|
|
|
|
<template> |
|
|
|
<el-form> |
|
|
|
<el-form-item label="玩家ID" label-width="100"> |
|
|
|
<el-input :value="props.user_no" disabled></el-input> |
|
|
|
<el-form-item label="收件人" label-width="100"> |
|
|
|
<el-select v-model="data.form.send_mode" :disabled="props.user_no != undefined ? true : false"> |
|
|
|
<el-option label="所有玩家" :value="1"></el-option> |
|
|
|
<el-option label="指定玩家" :value="2"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="玩家拥有资产" label-width="100"> |
|
|
|
<el-input :value="`金币 ${props.gold}`" disabled></el-input> |
|
|
|
|
|
|
|
<el-form-item v-if="data.form.send_mode == 2" label="玩家ID" label-width="100"> |
|
|
|
<el-input :value="props.user_no"></el-input> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<!-- <el-form-item label="玩家拥有资产" label-width="100"> |
|
|
|
<el-input :value="`金币 ${props.gold}`" disabled></el-input> |
|
|
|
</el-form-item> --> |
|
|
|
|
|
|
|
<div v-for="(item, index) in data.form.title"> |
|
|
|
<el-form-item :label="`邮件标题${index + 1}`" label-width="100"> |
|
|
|
<el-input v-model="data.form.title[index]"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item :label="`邮件内容${index + 1}`" label-width="100"> |
|
|
|
<!-- <el-input v-model="data.form.content" type="textarea" :rows="5" /> --> |
|
|
|
<CustomEditor @update-content="(v) => data.form.content[index] = v" /> |
|
|
|
<CustomEditor @update-content="(v) => (data.form.content[index] = v)" /> |
|
|
|
</el-form-item> |
|
|
|
</div> |
|
|
|
|
|
|
@ -120,7 +135,7 @@ const onSubmit = async () => { |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item> |
|
|
|
<el-input v-model="item.num" style="width: 100%" class="mb-10"></el-input> |
|
|
|
<el-input v-model="item.num" style="width: 100%" class="mb-10" type="number"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
|
|
|
@ -134,7 +149,7 @@ const onSubmit = async () => { |
|
|
|
</el-row> |
|
|
|
</el-card> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="发送时间" label-width="100"> |
|
|
|
<!-- <el-form-item label="发送时间" label-width="100"> |
|
|
|
<el-date-picker |
|
|
|
v-model="data.form.timing" |
|
|
|
type="datetime" |
|
|
@ -142,7 +157,7 @@ const onSubmit = async () => { |
|
|
|
value-format="YYYY-MM-DD HH:mm:ss" |
|
|
|
style="width: 100%" |
|
|
|
></el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> --> |
|
|
|
<div class="paginate-center"> |
|
|
|
<el-button type="primary" @click="$emit('closeBox', false)">取消</el-button> |
|
|
|
<el-button type="danger" @click="onSubmit">确定</el-button> |
|
|
|