xlb-main-login
Version:
``` yarn install ```
306 lines (300 loc) • 9.44 kB
JavaScript
import { wechat_url, wei_url, weichat } from './config'
import { axios } from '@/utils/request'
export const default_host = process.env.VUE_APP_API_ROOT
const baseUrl = default_host + '/api/demo-wechat-work/v1/wechat/work/'
const Url = 'http://192.168.1.145:8082/v1/wechat/work/'
// wei_url + baseUrl +
const keyMsg = {
image: 'image',
text: 'endText',
form: 'redemptionFormId',
redPacket: 'redPacketId',
radar: 'radarId',
}
//新增分组
export function addGrouping(data) {
return axios({
headers: { 'Content-Type': 'application/json;charset=UTF-8' },
url:baseUrl+ 'group-source/group',
method: 'post',
data,
})
}
//删除分组
export function deleteGroupName(id) {
return axios({
url: baseUrl + `group-source/group/${id}`,
method: 'delete',
})
}
//修改分组名称
export function namendGroupName(data) {
return axios({
headers: { 'Content-Type': 'application/json;charset=UTF-8' },
url: baseUrl + 'group-source/group',
method: 'put',
data,
})
}
//分组列表
export function groupingList() {
return axios({
url: baseUrl+ 'group-source/group',
method: 'get',
})
}
//分组移动
export function moveGrouping(data) {
return axios({
headers: { 'Content-Type': 'application/json;charset=UTF-8' },
url: baseUrl+ 'group-source/group/move',
method: 'put',
data,
})
}
//删除列表
export function delgreetlist(id) {
return axios({
url: baseUrl+'group-source?id=' + id,
method: 'delete',
})
}
// 列表接口
export function getgreetlist(params) {
return axios({
url:baseUrl +'group-source/page' ,
method: 'get',
params,
})
}
//渠道群码新增编辑
export function addChannel(formData, eventId = '') {
console.log(formData)
const formTemp = {}
formTemp.name = formData.form.name //渠道名称
formTemp.groupId = formData.form.yourGroup //分组id
formTemp.intoGroupMsg = formData.form.language //进群引导语
formTemp.groupSet = formData.form.type //进群设置
// let tagList =formData.tags
if (eventId) {
formTemp.id = eventId || ''
formTemp.templateId = formData.form.templateId
}
let tag ={
banner:formData.form.coverImg,
tag:[]
}
if(eventId){
tag.tag=formData.tags
}else{
var arr = []
formData.tags.filter((item) => {
var obj = {}
obj.tagId = ''
obj.tagName = item
arr.push(obj)
})
tag.tag= arr
}
formTemp.tag = tag //群标签 设置内容
formTemp.defaultCount = formData.form.prizesum //默认参与人数
formTemp.groupType = formData.form.groupType //进群方式
formTemp.groupManage = formData.form.dataSource // 渠道群管理
formTemp.staffList = formData.form.staffList // 客服员工
formTemp.staffMsg = formData.form.customer // 客服引导语
formTemp.enable = formData.form.switchFlag?1:0 // 附加话术开关
formTemp.welcomeMsg = []
let msgDetailList = [formData.verbalForm]
msgDetailList.unshift({
workMsgType:'text',
msg:formData.form.wenan
}) // 添加渠道欢迎语
msgDetailList.forEach((formInfo) => {
if (formInfo.workMsgType == 'link') {
formTemp.welcomeMsg.push({
workMsgType: formInfo.workMsgType,
msg: JSON.stringify({
url: formInfo.url,
title: formInfo.title,
picurl: formInfo.picurl,
desc: formInfo.desc,
}),
})
} else if (formInfo.workMsgType == 'miniprogram') {
formTemp.welcomeMsg.push({
workMsgType: formInfo.workMsgType,
msg: JSON.stringify({
appTitle: formInfo.appTitle,
appid: formInfo.appid,
page: formInfo.page,
msg: formInfo.appPicture,
}),
})
}else if(formInfo.workMsgType == 'text'){
formTemp.welcomeMsg.push({
workMsgType: formInfo.workMsgType,
msg: formData.form.wenan,
})
} else {
formTemp.welcomeMsg.push({
workMsgType: formInfo.workMsgType,
msg: formInfo[keyMsg[formInfo.workMsgType]],
})
}
})
if(!formData.form.switchFlag){
formTemp.welcomeMsg.pop()
}
console.log(formTemp,'formTemp')
//新增 编辑渠道活码
return axios({
headers: { 'Content-Type': 'application/json;charset=UTF-8' },
url: baseUrl+'group-source',
method: eventId !== '' ? 'put' : 'post',
data: formTemp,
})
}
//渠道码群回显
export function getChannel(id) {
const formData = {
form: {},
verbalForm: {},
tags:[]
}
return new Promise((resolve, reject) => {
axios({
url:baseUrl + 'group-source?id='+id,
method: 'get',
}).then((res) => {
let dataInfo =res.value
formData.form.name=dataInfo.name //渠道名称
formData.form.yourGroup =dataInfo.groupId//分组id
formData.form.templateId =dataInfo.templateId//id
formData.form.language =dataInfo.intoGroupMsg //进群引导语
formData.form.type =dataInfo.groupSet //进群设置
formData.form.coverImg = dataInfo.tag.banner // 标签页banner
formData.form.prizesum = dataInfo.defaultCount // 默认参与人数
formData.form.groupType = dataInfo.groupType // 进群方式
formData.form.dataSource = dataInfo.groupManage // 渠道群管理
formData.form.staffList = dataInfo.staffList // 客服员工
formData.form.customer =dataInfo.staffMsg // 客服引导语
formData.form.switchFlag =dataInfo.enable==1?true:false // 附加话术开关
formData.form.wenan =dataInfo.welcomeMsg[0].msg // 渠道欢迎语内容
formData.tags =dataInfo.tag.tag
if(dataInfo.welcomeMsg.length>=2){
var infoList =dataInfo.welcomeMsg.splice(1, 1)
let huashuList = []
infoList.forEach((item) => {
huashuList.push({
workMsgType: item.workMsgType, //类型
image: item.workMsgType == 'image' ? item.msg : '',
picurl: item.workMsgType == 'link' ? JSON.parse(item.msg).picurl : '',
title: item.workMsgType == 'link' ? JSON.parse(item.msg).title : '',
url: item.workMsgType == 'link' ? JSON.parse(item.msg).url : '',
desc: item.workMsgType == 'link' ? JSON.parse(item.msg).desc : '',
//
appPicture: item.workMsgType == 'miniprogram' ? JSON.parse(item.msg).msg : '',
appid: item.workMsgType == 'miniprogram' ? JSON.parse(item.msg).appid : '',
appTitle: item.workMsgType == 'miniprogram' ? JSON.parse(item.msg).appTitle : '',
page: item.workMsgType == 'miniprogram' ? JSON.parse(item.msg).page : '',
//
//表单id
formSelectedId: item.workMsgType == 'form' ? item.msg : '',
//红包id
formPacketId: item.workMsgType == 'redPacket' ? item.msg : '',
radarId: item.workMsgType == 'radar' ? item.msg : '',
})
})
formData.verbalForm =huashuList[0]
}else{
formData.verbalForm={
workMsgType: 'image',
endText: '', //欢迎语
image: '', //图片
title: '', //图文标题
desc: '', //图文描述
url: '', //图文链接
picurl: '', //图文图片
appTitle: '', //小程序标题
appid: '', //小程序appid
page: '', //小程序页面路径
appPicture: '', //小程序添加图片
redemptionFormId: '', //表单ID
redPacketId: '', //红包ID
commodityId: '', //商品ID
radarId: '', //雷达ID
}
}
return resolve(formData)
})
})
}
//下载渠道码
export function downsDitch(id) {
return axios({
url: baseUrl+ 'group-source/qr?id='+id,
method: 'get',
})
}
// 数据分析 客户列表
export function getColumnList(id,params) {
return axios({
url: baseUrl+ 'group-source/customer?sourceId='+id,
method: 'get',
params
})
}
// 数据分析 渠道分析
export function getChannelList(id,params) {
return axios({
url: baseUrl+ 'group-source/chart?id='+id,
method: 'get',
params,
})
}
// 数据分析 群分析
export function getSourcet(id,params) {
return axios({
url: baseUrl+ 'group-source/chat?sourceId='+id,
method: 'get',
params,
})
}
// 数据分析 卡片 emo-wechat-work/v1/wechat/work/group-source/data
export function ditchHead(id) {
return axios({
url: baseUrl+ 'group-source/data?id='+id,
method: 'get',
})
}
// 导出 0-渠道数据 1-渠道客户数据 2渠道群数据
export function memberExport(params,id) {
return axios({
url: baseUrl + 'group-source/e?sourceId='+id,
method: 'get',
params,
})
}
export function listExport(params) {
return axios({
url: baseUrl + 'group-source/e',
method: 'get',
params,
})
}
// 复制回显
export function getInfo(id) {
return axios({
url:baseUrl + 'group-source?id='+id,
method: 'get',
})
}
// 复制新增
export function addInfo(params) {
return axios({
headers: { 'Content-Type': 'application/json;charset=UTF-8' },
url: baseUrl+'group-source',
method: 'post',
data: params,
})
}