|
|
@@ -2529,6 +2529,21 @@
|
|
|
<el-input v-model="form18.realLinkGjDomainName" ></el-input>
|
|
|
</el-tooltip>
|
|
|
</el-form-item>
|
|
|
+ <el-form-item label="飞书看课域名">
|
|
|
+ <el-tooltip class="item" effect="dark" content="飞书看课域名" placement="top-end">
|
|
|
+ <el-input v-model="form18.feishuLinkDomainName"></el-input>
|
|
|
+ </el-tooltip>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="新飞书看课域名">
|
|
|
+ <el-tooltip class="item" effect="dark" content="新跳转方式使用的飞书看课域名" placement="top-end">
|
|
|
+ <el-input v-model="form18.feishuNewLinkDomainName"></el-input>
|
|
|
+ </el-tooltip>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="启用飞书新跳转">
|
|
|
+ <el-tooltip class="item" effect="dark" content="开启后获取飞书看课链接将使用新跳转方式" placement="top-end">
|
|
|
+ <el-switch v-model="form18.enableFeishuNewLink" :active-value="true" :inactive-value="false"></el-switch>
|
|
|
+ </el-tooltip>
|
|
|
+ </el-form-item>
|
|
|
<el-form-item label="网页授权域名">
|
|
|
<el-tooltip
|
|
|
class="item"
|
|
|
@@ -4417,7 +4432,7 @@
|
|
|
</el-tab-pane>
|
|
|
|
|
|
<el-tab-pane
|
|
|
- label="分享二维码获取手机号红包配置"
|
|
|
+ label="客户信息表动态配置"
|
|
|
name="qrcRedPackage.config"
|
|
|
>
|
|
|
<el-form
|
|
|
@@ -4441,10 +4456,16 @@
|
|
|
<el-option label="关" value="0"></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="分享类型" prop="type">
|
|
|
- <el-select v-model="form34.type" placeholder="请选择">
|
|
|
- <el-option label="图片" value="1"></el-option>
|
|
|
- <el-option label="视频" value="2"></el-option>
|
|
|
+<!-- <el-form-item label="分享类型" prop="type">-->
|
|
|
+<!-- <el-select v-model="form34.type" placeholder="请选择">-->
|
|
|
+<!-- <el-option label="图片" value="1"></el-option>-->
|
|
|
+<!-- <el-option label="视频" value="2"></el-option>-->
|
|
|
+<!-- </el-select>-->
|
|
|
+<!-- </el-form-item>-->
|
|
|
+ <el-form-item label="'已成交'客户认领限制" prop="enable">
|
|
|
+ <el-select v-model="form34.enable" placeholder="请选择">
|
|
|
+ <el-option label="开启" value="1"></el-option>
|
|
|
+ <el-option label="关闭" value="0"></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<div class="footer">
|
|
|
@@ -4452,6 +4473,55 @@
|
|
|
</div>
|
|
|
</el-form>
|
|
|
</el-tab-pane>
|
|
|
+ <el-tab-pane label="聚好麦店铺配置" name="jhmStore.config">
|
|
|
+ <el-form ref="form35" :model="form35" label-width="160px" v-if="form35 && form35.stores">
|
|
|
+ <div>
|
|
|
+ <el-button type="primary" icon="el-icon-plus" @click="addJhmStore" style="margin-bottom: 10px;">添加店铺</el-button>
|
|
|
+ </div>
|
|
|
+ <div v-for="(store, index) in form35.stores" :key="index" style="border: 1px solid #dcdfe6; padding: 20px; margin-bottom: 20px; border-radius: 4px;">
|
|
|
+ <div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 15px;">
|
|
|
+ <span style="color: #409eff;">店铺 {{ index + 1 }}</span>
|
|
|
+ <el-button type="danger" icon="el-icon-delete" size="mini" @click="removeJhmStore(index)" v-if="form35.stores.length > 1">删除店铺</el-button>
|
|
|
+ </div>
|
|
|
+ <el-form-item label="店铺名称" :prop="`stores.${index}.storeName`" :rules="{ required: true, message: '请输入店铺名称', trigger: 'blur' }">
|
|
|
+ <el-input v-model="store.storeName" placeholder="请输入店铺名称"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="应用名称" :prop="`stores.${index}.appName`" :rules="{ required: true, message: '请输入应用名称', trigger: 'blur' }">
|
|
|
+ <el-input v-model="store.appName" placeholder="请输入应用名称"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="appKey" :prop="`stores.${index}.appKey`" :rules="{ required: true, message: '请输入appKey', trigger: 'blur' }">
|
|
|
+ <el-input v-model="store.appKey" placeholder="请输入appKey"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="appSecret" :prop="`stores.${index}.appSecret`" :rules="{ required: true, message: '请输入appSecret', trigger: 'blur' }">
|
|
|
+ <el-input v-model="store.appSecret" placeholder="请输入appSecret"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="业务接口地址" :prop="`stores.${index}.businessUrl`" :rules="{ required: true, message: '请输入基础接口地址', trigger: 'blur' }">
|
|
|
+ <el-input v-model="store.businessUrl" placeholder="请输入业务接口地址"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ <div class="footer">
|
|
|
+ <el-button type="primary" @click="submitForm35">提 交</el-button>
|
|
|
+ </div>
|
|
|
+ </el-form>
|
|
|
+ </el-tab-pane>
|
|
|
+
|
|
|
+ <el-tab-pane label="飞书参数配置" name="feishu.config">
|
|
|
+ <el-form ref="form36" :model="form36" :rules="rules36" label-width="160px">
|
|
|
+ <el-form-item label="appId" prop="appId">
|
|
|
+ <el-input v-model="form36.appId" placeholder="请输入 appId"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="appSecret" prop="appSecret">
|
|
|
+ <el-input v-model="form36.appSecret" placeholder="请输入 appSecret" type="password" show-password></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="飞书Url" prop="feishuUrl">
|
|
|
+ <el-input v-model="form36.feishuUrl" placeholder="请输入 feishuUrl"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <div class="footer">
|
|
|
+ <el-button type="primary" @click="submitForm36">提 交</el-button>
|
|
|
+ </div>
|
|
|
+ </el-form>
|
|
|
+ </el-tab-pane>
|
|
|
+
|
|
|
</el-tabs>
|
|
|
|
|
|
<el-dialog
|
|
|
@@ -4683,6 +4753,10 @@ export default {
|
|
|
loading: false,
|
|
|
},
|
|
|
form34: {},
|
|
|
+ form35: {
|
|
|
+ stores: []
|
|
|
+ },
|
|
|
+ form36: {},
|
|
|
storeProductScrmColumns: [],
|
|
|
storeScrmColumns: [],
|
|
|
photoArr: [],
|
|
|
@@ -4770,6 +4844,14 @@ export default {
|
|
|
rules31: {},
|
|
|
rules32: {},
|
|
|
rules34: {},
|
|
|
+ rules36: {
|
|
|
+ appId: [
|
|
|
+ { required: true, message: '请输入 appId', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ appSecret: [
|
|
|
+ { required: true, message: '请输入 appSecret', trigger: 'blur' }
|
|
|
+ ]
|
|
|
+ },
|
|
|
};
|
|
|
},
|
|
|
created() {
|
|
|
@@ -5317,6 +5399,30 @@ export default {
|
|
|
const value = response.data.configValue;
|
|
|
this.form34 = value ? JSON.parse(value) : {};
|
|
|
}
|
|
|
+ if (key == 'jhmStore.config') {
|
|
|
+ const rawValue = response.data.configValue
|
|
|
+ let parsed = { stores: [] }
|
|
|
+ if (rawValue) {
|
|
|
+ try {
|
|
|
+ parsed = JSON.parse(rawValue)
|
|
|
+ } catch (e) {
|
|
|
+ parsed = { stores: [] }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 保证 parsed 是对象且 stores 为数组
|
|
|
+ this.form35 = parsed && typeof parsed === 'object' ? parsed : { stores: [] }
|
|
|
+ if (!Array.isArray(this.form35.stores)) {
|
|
|
+ this.form35.stores = []
|
|
|
+ }
|
|
|
+ if (this.form35.stores.length === 0) {
|
|
|
+ this.addJhmStore()
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 飞书配置处理
|
|
|
+ if (key == 'feishu.config') {
|
|
|
+ // 当 configValue 为空或 null 时,初始化为空对象
|
|
|
+ this.form36 = response.data.configValue ? JSON.parse(response.data.configValue) : {};
|
|
|
+ }
|
|
|
});
|
|
|
},
|
|
|
/** 提交按钮 */
|
|
|
@@ -5968,6 +6074,58 @@ export default {
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
+ addJhmStore() {
|
|
|
+ if (!this.form35 || !this.form35.stores) {
|
|
|
+ this.$set(this, 'form35', { stores: [] })
|
|
|
+ }
|
|
|
+ this.form35.stores.push({
|
|
|
+ storeName: '',
|
|
|
+ appName: '',
|
|
|
+ appKey: '',
|
|
|
+ appSecret: '',
|
|
|
+ businessUrl: '',
|
|
|
+ })
|
|
|
+ },
|
|
|
+ removeJhmStore(index) {
|
|
|
+ this.form35.stores.splice(index, 1)
|
|
|
+ },
|
|
|
+ submitForm35() {
|
|
|
+ if (!this.form35 || !this.form35.stores) {
|
|
|
+ this.$message.error('配置数据异常,请刷新后重试')
|
|
|
+ return
|
|
|
+ }
|
|
|
+ this.$refs['form35'].validate(valid => {
|
|
|
+ if (valid) {
|
|
|
+ var param = { configId: this.configId, configValue: JSON.stringify(this.form35) }
|
|
|
+ updateConfigByKey(param).then(response => {
|
|
|
+ if (response.code === 200) {
|
|
|
+ this.msgSuccess('修改成功')
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ submitForm36() {
|
|
|
+ this.$refs['form36'].validate(valid => {
|
|
|
+ if (valid) {
|
|
|
+ const param = {
|
|
|
+ configId: this.configId,
|
|
|
+ configKey: this.configKey,
|
|
|
+ feishuUrl: this.feishuUrl,
|
|
|
+ configValue: JSON.stringify(this.form36)
|
|
|
+ };
|
|
|
+ updateConfigByKey(param).then(response => {
|
|
|
+ if (response.code === 200) {
|
|
|
+ this.msgSuccess('飞书配置修改成功');
|
|
|
+ } else {
|
|
|
+ this.msgError('保存失败');
|
|
|
+ }
|
|
|
+ }).catch(() => {
|
|
|
+ this.msgError('请求异常');
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
},
|
|
|
};
|
|
|
</script>
|