<template>
|
<GlobalAlertWindow
|
:title="title"
|
:visible.sync="visible"
|
:confirm-working="isWorking"
|
@confirm="confirm"
|
>
|
<div class="tips-style">钉钉相关配置需要进入【<a src="https://open.dingtalk.com/">钉钉开放平台</a>】配置钉钉H5应用并获取对应的参数</div>
|
<el-form :model="form" ref="form" label-width="150px" label-suffix=":" :rules="rules" inline>
|
<div class="short-line">
|
<el-form-item label="CorpId" prop="corpId">
|
<el-input v-model="form.corpId" placeholder="请输入CorpId" v-trim/>
|
钉钉开放平台首页的CorpId
|
</el-form-item>
|
</div>
|
<div class="short-line">
|
<el-form-item label="AgentId" prop="agentId">
|
<el-input v-model="form.agentId" placeholder="请输入AgentId" v-trim/>
|
钉钉H5应用的AgentId
|
</el-form-item>
|
</div>
|
<div class="short-line">
|
<el-form-item label="app_key" prop="app_key">
|
<el-input v-model="form.app_key" placeholder="请输入app_key" v-trim/>
|
钉钉H5应用的app_key
|
</el-form-item>
|
</div>
|
<div class="short-line">
|
<el-form-item label="app_secret" prop="app_secret">
|
<el-input v-model="form.app_secret" placeholder="请输入app_secret" v-trim/>
|
钉钉H5应用的app_secret
|
</el-form-item>
|
</div>
|
</el-form>
|
<!-- <div slot="footer"></div> -->
|
</GlobalAlertWindow>
|
</template>
|
|
<script>
|
import BaseOpera from '@/components/base/BaseOpera'
|
import GlobalAlertWindow from '@/components/common/GlobalAlertWindow'
|
import UploadImage from '../common/UploadImage.vue'
|
// import { create } from '@/api/business/companyChange'
|
import { creditCode } from '@/utils/form'
|
import { update } from '@/api/business/clientManger'
|
export default {
|
name: 'OperaDDSettingWindow',
|
extends: BaseOpera,
|
components: { GlobalAlertWindow, UploadImage },
|
data () {
|
|
return {
|
isUploading: false,
|
// 表单数据
|
form: {
|
id: null,
|
|
corpId: '',
|
agentId: '',
|
app_key: '',
|
app_secret: '',
|
},
|
types:[],
|
// 验证规则
|
rules: {
|
corpId: [
|
{ required: true, message: '请输入CorpId', trigger: 'blur' }
|
],
|
agentId: [
|
{ required: true, message: '请输入AgentId', trigger: 'blur' }
|
],
|
app_key: [
|
{ required: true, message: '请输入app_key', trigger: 'blur' }
|
],
|
app_secret: [
|
{ required: true, message: '请输入app_secret', trigger: 'blur' }
|
],
|
// fileList: [
|
// { required: true, message: '请输入上传', trigger: 'change' }
|
// ],
|
companyShortName: [
|
{ required: true, message: '请输入客户简称', trigger: 'blur' }
|
],
|
userName: [
|
{ required: true, message: '请输入手机号码', trigger: 'blur' }
|
],
|
// address: [
|
// { required: true, validator: newRule, trigger: ['blur']}
|
// ],
|
creditCode: [
|
{ required: false, validator: creditCode, trigger: 'blur' }
|
],
|
|
}
|
}
|
},
|
created () {
|
this.config({
|
api: '/business/clientManger',
|
'field.id': 'id'
|
})
|
},
|
methods: {
|
open (title, target) {
|
this.title = title
|
this.visible = true
|
// this.form.fileList = []
|
// this.form.changeFileList = []
|
// 编辑
|
// debugger
|
this.$nextTick(() => {
|
this.$refs.form.clearValidate()
|
this.$refs.form.resetFields()
|
const dingdingInfo = target.dingdingInfo ? JSON.parse(target.dingdingInfo) : {}
|
// debugger
|
for (const key in this.form) {
|
this.form[key] = dingdingInfo[key]
|
}
|
this.form.id = target.id
|
// this.form.fileList = JSON.parse(JSON.stringify(target.fileList)) || []
|
// this.form.fileList.forEach(item => item.url = item.fileurlfull)
|
console.log(this.form);
|
})
|
},
|
begin() {
|
this.isUploading=true
|
},
|
end() {
|
this.isUploading=false
|
},
|
confirm() {
|
this.$refs.form.validate((valid) => {
|
if (!valid) {
|
return
|
}
|
this.isWorking = true
|
update({
|
id: this.form.id,
|
dingdingInfo: JSON.stringify(this.form)
|
})
|
.then(() => {
|
this.visible = false
|
this.$refs.form.resetFields()
|
this.$message.success('修改成功')
|
this.$emit('success')
|
})
|
.catch(e => {
|
this.$message.error(e)
|
})
|
.finally(() => {
|
this.isWorking = false
|
})
|
})
|
}
|
},
|
}
|
</script>
|
|
<style lang="scss" scoped>
|
.tips-style {
|
background-color: #f7f7f7;
|
height: 30px;
|
line-height: 30px;
|
a {
|
text-decoration:none
|
}
|
}
|
.item-line {
|
::v-deep .el-form-item__content {
|
width: 480px;
|
}
|
}
|
.short-line {
|
// ::v-deep .el-form-item__content {
|
// width: 686px;
|
// display: flex;
|
// .el-input--small {
|
// width: 286px!important;
|
// margin-right: 10px;
|
// }
|
// // width: 680px;
|
// }
|
::v-deep .el-form-item {
|
display: flex;
|
}
|
::v-deep .el-form-item__content {
|
display: flex;
|
.el-input--small {
|
width: 286px!important;
|
margin-right: 10px;
|
}
|
width: 680px;
|
}
|
|
}
|
.pic-line {
|
::v-deep .el-form-item__content {
|
width: 500px;
|
}
|
}
|
.address {
|
display: flex;
|
.line {
|
width: 10px;
|
}
|
}
|
.sub-title {
|
font-size: 20px;
|
font-weight: 600;
|
margin-top: 10px;
|
margin-bottom: 10px;
|
}
|
|
</style>
|