提交 e05c2707 作者: 毛细亚

任务详情

上级 6f2c25cf
......@@ -4,7 +4,7 @@
:lock-scroll="true"
title="玩家申诉"
:visible="show"
size="300px"
size="100%"
:append-to-body="true"
@close="close"
>
......@@ -298,16 +298,6 @@
</el-form>
</div>
</layer>
<el-dialog
:visible.sync="dialogRemarkVisible"
append-to-body
title="查看大图"
custom-class="remake-dialog"
>
<div class="remake-box">
<div v-html="dialogRemake"></div>
</div>
</el-dialog>
</div>
</template>
<script>
......@@ -319,9 +309,6 @@
RoleTodayOrder,
taskDetails,
taskTrack,
reportProcess,
appealProcess,
gamerReportProcess
} from '@/api/game'
import { memberBindExternalUser } from '@/api/works'
import layer from '@/components/dialog.vue'
......@@ -333,10 +320,9 @@
components: {
layer
},
props: ['show', 'taskDetails'],
props: ['show'],
data() {
return {
memberView: {},
is_finished: false,
loading: false,
remarks: [],
......@@ -348,14 +334,12 @@
assionInfo: {},
current: 0,
showLayer: false,
dialogRemarkVisible: false,
dialogRemake: '',
webForm: {
trace_result: '',
remark: '',
abnormal_types: []
},
approvalProcessActive: 1,
webFormRule: {
remark: [{ required: true, message: '请输入备注', trigger: 'blur' }],
trace_result: [
......@@ -391,43 +375,6 @@
{ label: '完成事件', value: 'finished_event' },
{ label: '目标客服号', value: 'target_service_name' }
],
reprotDetails: [
{ label: '主游戏', value: 'main_game_name' },
{ label: '马甲包', value: 'game_name' },
{ label: '账号', value: 'username' },
{ label: '审批状态', value: 'approval_status_text' },
{ label: 'CP角色ID', value: 'cp_role_id' },
{ label: '角色名称', value: 'role_name' },
{ label: '区服', value: 'server_name' },
{ label: '登记人', value: 'create_user' }
],
// 举报人信息
userReportDetails: [
{ label: '主游戏', value: 'main_game_name' },
{ label: '马甲包', value: 'game_name' },
{ label: '账号', value: 'report_username' },
{ label: '区服', value: 'report_server_name' },
{ label: 'CP角色ID', value: 'report_cp_role_id' },
{ label: '角色名称', value: 'report_role_name' },
{ label: '举报人角色累计充值金额', value: 'report_recharge_total_amount', type: 'money' },
{ label: '举报人角色近一周充值', value: 'report_recharge_week_amount', type: 'money' },
{ label: '登记时间', value: 'create_time' },
{ label: '与被举报人关系', value: 'report_relationship_text' }, // 只有 type =4 的时候 玩家举报才有
{ label: '审批状态', value: 'approval_status_text' },
{ label: '登记人', value: 'create_user' }
],
// 被举报人信息
userCanReportDetails: [
{ label: '主游戏', value: 'main_game_name' },
{ label: '马甲包', value: 'game_name' },
{ label: '账号', value: 'username' },
{ label: '区服', value: 'server_name' },
{ label: 'CP角色ID', value: 'cp_role_id' },
{ label: '角色名称', value: 'role_name' },
{ label: '累计充值金额', value: 'recharge_total_amount', type: 'money' },
{ label: '近一周充值金额', value: 'recharge_week_amount', type: 'money' },
{ label: '违规操作类型', value: 'violation_type_text' }
]
}
},
watch: {
......@@ -483,38 +430,6 @@
this.taskTypeList = res.data.data
})
},
async reportProcess() {
this.current = 0
const res = await reportProcess({ id: this.taskDetails.id })
this.approvalProcessList = res.data.data
res.data.data.map((item) => {
if (item.approval_result !== '0' && item.approval_result !== '2') {
this.current += 1
}
})
},
// 玩家申诉
async appealProcess() {
this.current = 0
const res = await appealProcess({ id: this.taskDetails.id })
this.approvalProcessList = res.data.data
res.data.data.map((item) => {
if (item.approval_result !== '0' && item.approval_result !== '2') {
this.current += 1
}
})
},
// 玩家举报进度
async gamerReportProcess() {
this.current = 0
const res = await gamerReportProcess({ id: this.taskDetails.id })
this.approvalProcessList = res.data.data
res.data.data.map((item) => {
if (item.approval_result !== '0' && item.approval_result !== '2') {
this.current += 1
}
})
},
searchTrackList() {
const data = {
type: 'dictionaries',
......@@ -571,70 +486,8 @@
}
})
},
// 玩家举报发起会话 成功发起会话后 直接选中角色信息举报记录tab 其中搜索条件 审批记录为待审批 申请方式为玩家登记
reportRequestSession(item) {
// 复用之前的发起会话逻辑
const data = {
userid: item.userid,
user_name: item.user.name,
user_avatar: item.user.avatar,
external_userid: item.external_userid,
external_user_name: item.external_user.name,
external_user_avatar: item.external_user.avatar,
corp_id: item.corp_id
}
// 为了给掌游记录答问比 发起会话的时候需要记录任务的 id 然后会在会话列表中 返回任务 ID 在和用户聊天的时候 每次都把 任务的信息 通过 webscoket 发送给后端
item.task_id = data.task_id = this.taskDetails.id
item.task_type = data.task_type = this.taskDetails.plan_type
launchSession(data).then((res) => {
// 随机取一个 member_id
let member_list = []
if (this.assionInfo.members?.length > 0) {
member_list = this.assionInfo.members.map((item) => item.member_id)
} else {
member_list = [this.assionInfo.member_id]
}
if (member_list.length > 0) {
const index = Math.floor(Math.random(0, 1) * member_list.length)
this.set_task_session_member_id(member_list[index])
const itemData = this.$clone(item)
itemData.session_id = res.data.session_id
this.$emit('taskSession', itemData, 'report')
}
})
},
requestSession(item) {
const data = {
userid: item.userid,
user_name: item.user.name,
user_avatar: item.user.avatar,
external_userid: item.external_userid,
external_user_name: item.external_user.name,
external_user_avatar: item.external_user.avatar,
corp_id: item.corp_id
}
// 为了给掌游记录答问比 发起会话的时候需要记录任务的 id 然后会在会话列表中 返回任务 ID 在和用户聊天的时候 每次都把 任务的信息 通过 webscoket 发送给后端 通过 task_type 召回任务发送的时候 需要在工作台发送游戏渠道的时候 显示 一键发送渠道链接
item.task_id = data.task_id = this.taskDetails.id
item.task_type = data.task_type = this.taskDetails.plan_type
// this.taskDetails.plan_type == 7 ? data.task_id = this.taskDetails.id : ''
launchSession(data).then((res) => {
// 随机取一个 member_id
let member_list = []
if (this.assionInfo.members?.length > 0) {
member_list = this.assionInfo.members.map((item) => item.member_id)
} else {
member_list = [this.assionInfo.member_id]
}
if (member_list.length > 0) {
const index = Math.floor(Math.random(0, 1) * member_list.length)
this.set_task_session_member_id(member_list[index])
}
const itemData = this.$clone(item)
itemData.session_id = res.data.session_id
// this.taskDetails.plan_type == 7 ? itemData.task_id = this.taskDetails.id : ''
this.$emit('taskSession', itemData)
})
console.log(item, '发起会话')
},
async memberOrder() {
let res = {}
......@@ -653,19 +506,11 @@
},
async memberBindExternalUser() {
let member_list = []
if (this.taskTypeSelect == 4) { // 玩家举报
if (this.assionInfo.members?.length > 0) {
member_list = this.assionInfo.members.map((item) => item.report_member_id)
} else {
member_list = [this.assionInfo.report_member_id]
}
} else {
if (this.assionInfo.members?.length > 0) {
member_list = this.assionInfo.members.map((item) => item.member_id)
} else {
member_list = [this.assionInfo.member_id]
}
}
this.loading = true
if (member_list.length === 0) {
return false
......
......@@ -173,8 +173,6 @@
</div>
</div>
</div>
<!-- 任务详情 -->
<taskDetails v-if="showTaskDetails" :taskDetails="taskDetails" />
</div>
</template>
<script>
......@@ -182,16 +180,13 @@
import { mapState } from 'vuex'
import textEditor from '@/components/textEditor.vue'
import noContent from '@/components/noContent.vue'
import taskDetails from './taskDetails.vue'
export default {
components: {
textEditor,
noContent,
taskDetails
},
data() {
return {
showTaskDetails: false,
isloadMore: true,
loading: false,
collapseValue: ['1'],
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论