|
@@ -99,11 +99,12 @@
|
|
<a-modal
|
|
<a-modal
|
|
title="账号绑定"
|
|
title="账号绑定"
|
|
v-model="visible"
|
|
v-model="visible"
|
|
- @ok="handleOk"
|
|
|
|
|
|
+ @ok="handleSubmit"
|
|
:width="800"
|
|
:width="800"
|
|
:okButtonProps="{ props: {disabled: false} }"
|
|
:okButtonProps="{ props: {disabled: false} }"
|
|
:cancelButtonProps="{ props: {disabled: false} }"
|
|
:cancelButtonProps="{ props: {disabled: false} }"
|
|
>
|
|
>
|
|
|
|
+
|
|
<a-form>
|
|
<a-form>
|
|
<a-form-item
|
|
<a-form-item
|
|
label="选择方式"
|
|
label="选择方式"
|
|
@@ -119,8 +120,8 @@
|
|
v-if="showLogin"
|
|
v-if="showLogin"
|
|
>
|
|
>
|
|
<a-form
|
|
<a-form
|
|
- :form="form"
|
|
|
|
- @submit="loginForm">
|
|
|
|
|
|
+ :form="form">
|
|
|
|
+ <!-- @submit="loginForm">-->
|
|
<a-form-item
|
|
<a-form-item
|
|
label="账号:"
|
|
label="账号:"
|
|
:label-col="{xs: {span: 24},sm: {span: 5}}"
|
|
:label-col="{xs: {span: 24},sm: {span: 5}}"
|
|
@@ -142,20 +143,28 @@
|
|
<a-radio-button value="bytedance">头条</a-radio-button>
|
|
<a-radio-button value="bytedance">头条</a-radio-button>
|
|
</a-radio-group>
|
|
</a-radio-group>
|
|
</a-form-item>
|
|
</a-form-item>
|
|
- <a-form-item :wrapperCol="{ span: 24 }"
|
|
|
|
- style="text-align: center">
|
|
|
|
- <a-button htmlType="submit" type="primary">提交</a-button>
|
|
|
|
|
|
+
|
|
|
|
+ <a-form-item label="部门分配" :labelCol="{xs: {span: 24},sm: {span: 5}}"
|
|
|
|
+ :wrapperCol="{xs: {span: 24},sm: {span: 16}}" v-show="!departDisabled">
|
|
|
|
+ <j-select-depart v-model="departmentId" :multi="false"></j-select-depart>
|
|
|
|
+ </a-form-item>
|
|
|
|
+
|
|
|
|
+ <a-form-item label="用户选择" :labelCol="{xs: {span: 24},sm: {span: 5}}"
|
|
|
|
+ :wrapperCol="{xs: {span: 24},sm: {span: 16}}">
|
|
|
|
+ <j-select-user-by-dep v-model="users"></j-select-user-by-dep>
|
|
</a-form-item>
|
|
</a-form-item>
|
|
|
|
+
|
|
</a-form>
|
|
</a-form>
|
|
</a-form-item>
|
|
</a-form-item>
|
|
|
|
+
|
|
<a-form-item
|
|
<a-form-item
|
|
v-if="showAuthorization"
|
|
v-if="showAuthorization"
|
|
:labelCol="{xs: {span: 24},sm: {span: 5}}"
|
|
:labelCol="{xs: {span: 24},sm: {span: 5}}"
|
|
:wrapperCol="{xs: {span: 24},sm: {span: 16}}">
|
|
:wrapperCol="{xs: {span: 24},sm: {span: 16}}">
|
|
<a-form
|
|
<a-form
|
|
- :form="form"
|
|
|
|
- @submit="authorizationForm"
|
|
|
|
- >
|
|
|
|
|
|
+ :form="form">
|
|
|
|
+ <!--@submit="authorizationForm"-->
|
|
|
|
+
|
|
<a-form-item label="媒体:" :labelCol="{xs: {span: 24},sm: {span: 5}}"
|
|
<a-form-item label="媒体:" :labelCol="{xs: {span: 24},sm: {span: 5}}"
|
|
:wrapperCol="{xs: {span: 24},sm: {span: 16}}">
|
|
:wrapperCol="{xs: {span: 24},sm: {span: 16}}">
|
|
<a-radio-group buttonStyle="outline" v-model="authorizationType">
|
|
<a-radio-group buttonStyle="outline" v-model="authorizationType">
|
|
@@ -163,10 +172,17 @@
|
|
<a-radio-button value="bytedance">头条</a-radio-button>
|
|
<a-radio-button value="bytedance">头条</a-radio-button>
|
|
</a-radio-group>
|
|
</a-radio-group>
|
|
</a-form-item>
|
|
</a-form-item>
|
|
- <a-form-item :wrapperCol="{ span: 24 }"
|
|
|
|
- style="text-align: center">
|
|
|
|
- <a-button htmlType="submit" type="primary">提交</a-button>
|
|
|
|
|
|
+ <a-form-item label="部门分配" :labelCol="{xs: {span: 24},sm: {span: 5}}"
|
|
|
|
+ :wrapperCol="{xs: {span: 24},sm: {span: 16}}" v-show="!departDisabled">
|
|
|
|
+ <j-select-depart v-model="departmentId" :multi="false"></j-select-depart>
|
|
|
|
+
|
|
|
|
+ </a-form-item>
|
|
|
|
+
|
|
|
|
+ <a-form-item label="用户选择" :labelCol="{xs: {span: 24},sm: {span: 5}}"
|
|
|
|
+ :wrapperCol="{xs: {span: 24},sm: {span: 16}}">
|
|
|
|
+ <j-select-user-by-dep v-model="users"></j-select-user-by-dep>
|
|
</a-form-item>
|
|
</a-form-item>
|
|
|
|
+
|
|
</a-form>
|
|
</a-form>
|
|
</a-form-item>
|
|
</a-form-item>
|
|
|
|
|
|
@@ -177,6 +193,7 @@
|
|
|
|
|
|
<!-- 表单区域 -->
|
|
<!-- 表单区域 -->
|
|
<advertiser-modal ref="modalForm" @ok="modalFormOk"></advertiser-modal>
|
|
<advertiser-modal ref="modalForm" @ok="modalFormOk"></advertiser-modal>
|
|
|
|
+ <j-select-user ref="userForm" @ok="modalFormOk"></j-select-user>
|
|
</a-card>
|
|
</a-card>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
@@ -184,8 +201,12 @@
|
|
import AdvertiserModal from './modules/AdvertiserModal'
|
|
import AdvertiserModal from './modules/AdvertiserModal'
|
|
import {JeecgListMixin} from '@/mixins/JeecgListMixin'
|
|
import {JeecgListMixin} from '@/mixins/JeecgListMixin'
|
|
import JTreeSelect from '@/components/jeecg/JTreeSelect'
|
|
import JTreeSelect from '@/components/jeecg/JTreeSelect'
|
|
- import {deleteAction, postAction, getAction} from '@/api/manage'
|
|
|
|
import AFormItem from "ant-design-vue/es/form/FormItem";
|
|
import AFormItem from "ant-design-vue/es/form/FormItem";
|
|
|
|
+ import JSelectDepart from '@/components/jeecgbiz/JSelectDepart'
|
|
|
|
+ import JSelectUserByDep from '@/components/jeecgbiz/JSelectUserByDep'
|
|
|
|
+ import JSelectUser from '@/components/jeecgbiz/JSelectUser'
|
|
|
|
+ import {postAction} from "../../../api/manage";
|
|
|
|
+ import {mapActions, mapGetters} from 'vuex'
|
|
|
|
|
|
|
|
|
|
export default {
|
|
export default {
|
|
@@ -194,10 +215,16 @@
|
|
components: {
|
|
components: {
|
|
AFormItem,
|
|
AFormItem,
|
|
AdvertiserModal,
|
|
AdvertiserModal,
|
|
- JTreeSelect
|
|
|
|
|
|
+ JTreeSelect,
|
|
|
|
+ JSelectUserByDep,
|
|
|
|
+ JSelectDepart,
|
|
|
|
+ JSelectUser
|
|
},
|
|
},
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
|
|
+ departDisabled: false, //是否是我的部门调用该页面
|
|
|
|
+ users: this.userInfo().realname,//用户名称
|
|
|
|
+ departmentId: this.userInfo().departId, //部门id
|
|
description: '广告主信息表管理页面',
|
|
description: '广告主信息表管理页面',
|
|
visible: false,
|
|
visible: false,
|
|
accountName: '',
|
|
accountName: '',
|
|
@@ -258,8 +285,12 @@
|
|
deleteBatch: '/ctop/advertiser/deleteBatch',
|
|
deleteBatch: '/ctop/advertiser/deleteBatch',
|
|
exportXlsUrl: 'ctop/advertiser/exportXls',
|
|
exportXlsUrl: 'ctop/advertiser/exportXls',
|
|
importExcelUrl: 'ctop/advertiser/importExcel',
|
|
importExcelUrl: 'ctop/advertiser/importExcel',
|
|
- bindAccountLoginUrl: '/ctop/bindAccount/login',
|
|
|
|
- bindAuthorizationUrl: '/ctop/bindAccount/authorization',
|
|
|
|
|
|
+ bindAccountLoginUrl: '/ctop/bindAccountLogin/login',
|
|
|
|
+ bindAuthorizationUrl: '/ctop/bindAccountAuth/authorization',
|
|
|
|
+ getLoginInfo: '/ctop/bindAccount/getLoginInfo',
|
|
|
|
+ userId: "/sys/user/generateUserId", // 引入生成添加用户情况下的url
|
|
|
|
+ userWithDepart: "/sys/user/userDepartList", // 引入为指定用户查看部门信息需要的url
|
|
|
|
+
|
|
},
|
|
},
|
|
}
|
|
}
|
|
},
|
|
},
|
|
@@ -269,67 +300,72 @@
|
|
}
|
|
}
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
- loginForm(e) {
|
|
|
|
- e.preventDefault()
|
|
|
|
- this.form.validateFields((err, values) => {
|
|
|
|
- if (!err) {
|
|
|
|
- if (this.mode == 'login') {
|
|
|
|
- let params = {};
|
|
|
|
- params.advertiserId = this.record.id;
|
|
|
|
- params.accountName = this.accountName;
|
|
|
|
- params.password = this.password;
|
|
|
|
- params.loginType = this.loginType;
|
|
|
|
- console.log(this.loginType)
|
|
|
|
- getAction(this.url.bindAccountLoginUrl, params).then((res) => {
|
|
|
|
- if (res.success) {
|
|
|
|
- alert("绑定成功");
|
|
|
|
- this.accountName = '';
|
|
|
|
- this.password = '';
|
|
|
|
- this.loginType = '';
|
|
|
|
- } else {
|
|
|
|
- alert("绑定失败");
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ ...mapGetters(["nickname", "avatar", "userInfo"]),
|
|
|
|
+
|
|
|
|
+ handleSubmit() {
|
|
|
|
+ /*postAction(this.url.getLoginInfo).then((res) => {
|
|
|
|
+ if (res.success) {
|
|
|
|
+ alert("绑定成功");
|
|
|
|
+ this.accountName = '';
|
|
|
|
+ this.password = '';
|
|
|
|
+ this.loginType = '';
|
|
|
|
+ } else {
|
|
|
|
+ alert("绑定失败");
|
|
}
|
|
}
|
|
- )
|
|
|
|
- },
|
|
|
|
|
|
+ });*/
|
|
|
|
+ let params = {};
|
|
|
|
+ params.advertiserId = this.record.id;
|
|
|
|
+ params.advertiser_name = this.record.name;
|
|
|
|
+ params.userId = this.userInfo().id;
|
|
|
|
+ params.realName = this.userInfo().realname;
|
|
|
|
+ params.departmentId = this.departmentId;
|
|
|
|
+ params.distributionName = this.users;
|
|
|
|
|
|
- authorizationForm(e) {
|
|
|
|
- e.preventDefault()
|
|
|
|
- this.form.validateFields((err, values) => {
|
|
|
|
- if (!err) {
|
|
|
|
- if (this.mode == 'authorization') {
|
|
|
|
- let params = {};
|
|
|
|
- params.advertiserId = this.record.id;
|
|
|
|
- params.authorizationType = this.authorizationType;
|
|
|
|
- getAction(this.url.bindAuthorizationUrl, params).then((res) => {
|
|
|
|
- if (res.success) {
|
|
|
|
- alert("绑定成功");
|
|
|
|
- window.open(res.message, '_blank');
|
|
|
|
- } else {
|
|
|
|
- alert("绑定失败");
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
|
|
+ // 触发表单验证
|
|
|
|
+ this.form.validateFields((err) => {
|
|
|
|
+ if (!err) {
|
|
|
|
+ if (this.mode == 'login') {
|
|
|
|
+ params.accountName = this.accountName;
|
|
|
|
+ params.password = this.password;
|
|
|
|
+ params.loginType = this.loginType;
|
|
|
|
+ if (this.loginType == 'kuaishou') {
|
|
|
|
+ params.mediaId = 2;
|
|
|
|
+ } else if (this.loginType == 'bytedance') {
|
|
|
|
+ params.mediaId = 1;
|
|
|
|
+ }
|
|
|
|
+ postAction(this.url.bindAccountLoginUrl, params).then((res) => {
|
|
|
|
+ if (res.success) {
|
|
|
|
+ alert("绑定成功");
|
|
|
|
+ this.accountName = '';
|
|
|
|
+ this.password = '';
|
|
|
|
+ this.loginType = '';
|
|
|
|
+ } else {
|
|
|
|
+ alert("绑定失败");
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+ // 授权登录
|
|
|
|
+ if (this.mode == 'authorization') {
|
|
|
|
+ params.authorizationType = this.authorizationType;
|
|
|
|
+ if (this.authorizationType == 'kuaishou') {
|
|
|
|
+ params.mediaId = 2;
|
|
|
|
+ } else if (this.authorizationType == 'bytedance') {
|
|
|
|
+ params.mediaId = 1;
|
|
}
|
|
}
|
|
|
|
+ postAction(this.url.bindAuthorizationUrl, params).then((res) => {
|
|
|
|
+ if (res.success) {
|
|
|
|
+ window.open(res.message, '_blank');
|
|
|
|
+ } else {
|
|
|
|
+ alert("绑定失败");
|
|
|
|
+ }
|
|
|
|
+ });
|
|
}
|
|
}
|
|
|
|
+
|
|
}
|
|
}
|
|
- )
|
|
|
|
- },
|
|
|
|
|
|
+ })
|
|
|
|
|
|
- showModal(record) {
|
|
|
|
- this.record = record
|
|
|
|
- this.visible = true
|
|
|
|
- },
|
|
|
|
- handleOk(e) {
|
|
|
|
- console.log(e);
|
|
|
|
- this.visible = false
|
|
|
|
- },
|
|
|
|
- handleCancel(e) {
|
|
|
|
- console.log(e);
|
|
|
|
- this.visible = false
|
|
|
|
},
|
|
},
|
|
|
|
+
|
|
onChageLogin() {
|
|
onChageLogin() {
|
|
console.log(this.mode)
|
|
console.log(this.mode)
|
|
if (this.mode == 'login') {
|
|
if (this.mode == 'login') {
|
|
@@ -338,9 +374,30 @@
|
|
} else {
|
|
} else {
|
|
this.showLogin = false;
|
|
this.showLogin = false;
|
|
this.showAuthorization = true;
|
|
this.showAuthorization = true;
|
|
|
|
+
|
|
|
|
+
|
|
}
|
|
}
|
|
- }
|
|
|
|
|
|
+ },
|
|
|
|
+ showModal(record) {
|
|
|
|
+ this.record = record
|
|
|
|
+ this.visible = true
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ handleCancel() {
|
|
|
|
+ this.close()
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ handleOk(e) {
|
|
|
|
+ console.log(e);
|
|
|
|
+ this.visible = false
|
|
|
|
+ },
|
|
|
|
+ handleCancel(e) {
|
|
|
|
+ console.log(e);
|
|
|
|
+ this.visible = false
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+
|
|
}
|
|
}
|
|
</script>
|
|
</script>
|
|
<style scoped>
|
|
<style scoped>
|