前端工作总结270-发布逻辑处理
学无止境 lv.1
发布时间:2023-12-12 18:07:59 266相关标签:
<template>
<el-dialog
title="发布"
:visible.sync="dialogVisible"
width="40%"
:before-close="handleClose">
<el-form label-width="80px">
<el-form-item label="项目名">
<el-input v-model="project_name" placeholder="请输入项目名"></el-input>
</el-form-item>
<el-form-item v-for="item in AweMepro" :label="item.name">
<el-input v-if="item.widget.type == 'input'" v-model="form[item.key]" placeholder="名称"></el-input>
<el-cascader v-else-if="item.widget.type == 'category-select'" v-model="categoryValue"
:options="item.widget.categories" @change="handleChange">
<template slot-scope="{ node, data }">
<span>{{ data.title }}</span>
</template>
</el-cascader>
<el-switch v-else-if="item.widget.type == 'boolean-select'" v-model="form[item.key]" text="是否原创"></el-switch>
<el-tag v-else-if="item.widget.type == 'tag-input'" v-for="row in form[item.key]" size="medium" closable>{{
row
}}
</el-tag>
<el-date-picker
v-else-if="item.widget.type == 'date-time'"
v-model="form[item.key]"
type="datetime"
placeholder="选择日期时间"
value-format="timestamp"
>
</el-date-picker>
<el-upload :action="action"
v-else-if="item.widget.type == 'picture'"
disabled>
<img v-if="form[item.key]" :src="form[item.key]" class="avatar">
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
</el-upload>
<el-upload :action="action"
v-else-if="item.widget.type == 'cover-pictures'"
disabled>
<img v-if="form[item.key]" :src="form[item.key]" class="avatar">
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
</el-upload>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false">取 消</el-button>
<el-button type="primary" @click="ListAccept">确 定</el-button>
</span>
</el-dialog>
</template>
<script>
import
EditTags from "@/views/content/ContentComponents/EditTags";
import EditUploads from "@/views/content/ContentComponents/EditUploads";
import MyInput from "@/views/order/accoutTask/MyInput";
import {getAction, postActionXing, putAction} from "@/api";
export default {
name: "ContentPublish",
components: {
EditTags,
EditUploads,
MyInput
},
data() {
return {
value: '',
categoryValue: [],
/*品牌名*/
brand_id: null,
project_id: 0,
scope_id: 0,
/*content_id*/
content_type: 0,
/*项目名*/
project_name: '',
dialogVisible: false,
form: {},
UserToken: {},
info: null,
/*视频上传地址*/
VedioUrl: '',
/*图片上传地址*/
ImageUrl: '',
/*用来存储account的数值*/
accountListPro: {},
/*存放despro的数值*/
differentPro: {},
/*存放AME的数值*/
AweMepro: [],
/*存放accountlist数值*/
accountListBrand: {},
/*存放detail*/
detailPro: {},
/*存放user*/
userPro: {},
itemsBian: {},
};
},
methods: {
publish(id) {
this.dialogVisible = true;
/*任务详情的一个数据接口 {{host}}/task/1*/
getAction("/task/" + id + "/release").then(res => {
console.log(res, 8888)
if (res.code == 404) {
this.$message({
message: res.msg,
type: 'error'
});
this.dialogVisible = false;
}
/*存储accout的数据*/
/* this.accountListPro = res.data.account*/
/*返回的示例数据brand_id: "12305"
name: "123"
pavg: null
plugin_icon_url: "https://img.hake.cc/net_images/m2bws2z3uoq.png"
plugin_key: "bilibili"
plugin_name: "Bilibili"
remote_account_id: "302970"
status: true*/
/*存储account_brand的数值*/
this.accountListBrand = res.data.account_brand
/*返回对应的实例值
* videoAuditUsers: Array(3)
wordAuditUsers: Array(3)*/
this.AweMepro = res.data.account_plugins
/*返回对应的实例值
* description: null
key: "name"
name: "名称"
unified: true
value_schema: Object
widget: Object
* */
this.differentPro = res.data.different_catalogs
/*
* 302970: Object
category: ""
intro: ""
name: ""
original: ""
quiz-publish: ""
tags: ""
trans_reason: ""
upload-image: ""
* */
this.detailPro = res.data.account_detail
/*
* account_name: (...)
avatar_url: (...)
brand_id: (...)
brand_name: (...)
default_categories: (...)
d efault_category_names: (...)
error_code: (...)
error_message: (...)
extensions: (...)
form_items: (...)
id: (...)
plugin_icon_url: (...)
plugin_key: (...)
plugin_name: (...)
type: (...)*/
/*
*/
this.userPro = res.data.users
/*返回示例代码
* access_token: (...)
account: (...)
business_module: (...)
column: (...)
department_id: (...)
expire_time: (...)
ff_login_time: (...)
ff_open_id: (...)
ff_time: (...)
ff_token: (...)
id: (...)
login_at: (...)
name: (...)
role: (...)*/
this.info = res.data;
/*本id1用来判断是数据接口或者是图文数据接口*/
this.content_type = res.data.content_type
/*本id表示的是多少行的一个数据id*/
this.scope_id = id
/*存入的数值是所需要的一个品牌id的数据值*/
this.brand_id = res.data.account.brand_id/*
getActionXing("/internal/plugins/" + this.detailPro.plugin_key + "/catalog-items/different").then(res => {
console.log(res)
this.itemsBian = res.data.bilibili
console.log(this.itemsBian)
this.itemsBian.map((value, index) => {
console.log(value.widget.type)
})
})*/
this.form = {
"name": res.data.title,
"tags": res.data.tag,
"upload-image": res.data.thumbnail,
"cover-pictures": res.data.thumbnail,
}
})
},
handleClose(done) {
this.$confirm('确认关闭?')
.then(_ => {
this.dialogVisible = false
})
.catch(_ => {
this.dialogVisible = false
});
},
ListAccept() {
//如果当前是视频资源
if (this.content_type == 1) { //视频
this.form['quiz-publish'] = this.form['quiz-publish'] / 1000;
this.info.different_catalogs[this.info.account.remote_account_id] = this.form;
var url = "/internal/users/current/video-url/distribute";
var data = {
"brand_id": this.info.account.brand_id,
"name": this.info.name,
"video_url": this.info.resource,
"account_ids": [this.info.account.remote_account_id],
"unify_catalogs": {},
"different_catalogs": this.info.different_catalogs,
}
postActionXing(url, data).then(res => {
if (res.data) {
putAction("/task/" + this.scope_id + "/project", {
project_id: res.data
}).then(res => {
if (res.code == 0) {
this.$message({
message: '发布成功!',
type: 'success'
});
putAction('/task/' + this.scope_id + '/status', {status: 4}).then(res => {
})
this.$emit("ok")
this.dialogVisible = false;
}
})
}
});
}
/*如果当前是图文资源*/
else if (this.content_type == 2) { //图文
/*cover-pictures*/
var wordAuditUsers = [];
for (var i = 0; i < this.info.account_brand.wordAuditUsers.length; i++) {
wordAuditUsers.push(this.info.account_brand.wordAuditUsers[i].id);
}
this.form['quiz-publish'] = this.form['quiz-publish'] / 100;
this.info.different_catalogs[this.info.account.remote_account_id] = this.form;
var url = "/internal/users/current/word-projects/distribute";
var data = {
"brand_id": this.info.account.brand_id,
"title": this.info.title,
"name": this.info.name,
"body": this.info.resource,
/*"video_url": this.info.resource,*/
"account_ids": [this.info.account.remote_account_id],
"unify_catalogs": {},
"different_catalogs": this.info.different_catalogs,
/* "brand_id": this.brand_id,
"title": this.project_name,
"body": this.info.resource,
"account_ids": [this.info.account.remote_account_id],
"audit_user_ids": wordAuditUsers,
"unify_catalogs": {},
"different_catalogs": this.different_catalogs*/
}
postActionXing(url, data).then(res => {
if (res.data) {
putAction("/task/" + this.scope_id + "/project", {
project_id: res.data
}).then(res => {
console.log(res)
putAction('/task/' + this.scope_id + '/status', {status: 4}).then(res => {
})
})
}
})
}
/*创建我的视频接口 第一个参数自己手动录入 第二个参数取值任务详情的接口接口*/
// postActionXing("/internal/users/current/video-projects",{
// brand_id:this.account.brand_id,name:this.project_name
// }).then(
// res=>{
// this.project_id=res.data
// console.log(this.project_id)
// /*传入四个个参数 传入title icon_path transcode paths 设置传入的参数 */
// postActionXing("/internal/users/current/video-projects/"+this.project_id+"/videos",{
// title: this.content.title,
// icon_path:this.content.resource,
// transcode: true,
// paths: [this.content.thumbnail]
// })
// }
// )
/*创建我的图文接口 进行数据的传输*/
// postActionXing("/internal/users/current/word-projects",{
// brand_id:this.account.brand_id,name:this.project_name,body:this.content.resource
// }).then(
// res=>{
// this.project_id=res.data
// console.log(this.project_id)
// }
// )
/*获取图文详情*/
// getActionXing("/internal/users/current/brands/word-projects/"+this.project_id).then(res=>{
// console.log(res)
// })
/*图文详情 图文修改 图文分发接口*/
// getActionXing("/internal/users/current/word-projects").then(res=>{
// console.log(res)
// this.dialogVisible=false
// })
},
handleChange(e) {
this.form.category = e;
}
}
};
</script>
文章来源: https://blog.51cto.com/u_14476028/5684682
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报