Compare commits

...

3 Commits

  1. 28
      src/views/channelManage/fans/fans.vue
  2. 34
      src/views/channelManage/reward/reward.vue
  3. 1
      src/views/consume/bean/dieHardFan.vue
  4. 1
      src/views/consume/bean/liveStream.vue
  5. 55
      src/views/permissions/rolePermission.vue

28
src/views/channelManage/fans/fans.vue

@ -57,7 +57,8 @@ const beanConsumeFan = ref({
})
//
const channels = ref([])
//
const showChannelFilter = ref(false)
const getChannel = async function () {
try {
const result = await request({
@ -76,6 +77,26 @@ const getChannel = async function () {
})
}
}
const getRoleChannel = async function () {
try {
if (!adminData.value || !adminData.value.roleId) {
showChannelFilter.value = true
return
}
const result = await request({
url: '/beanConsume/getRoleChannel',
data: { roleId: adminData.value.roleId }
})
const data = result.data ?? result
const channelName = typeof data === 'string' ? data : data.channelName
const allLabel = t('common.all')
showChannelFilter.value = channelName === allLabel || channelName === '全部'
} catch (error) {
console.log('请求角色频道失败', error)
showChannelFilter.value = true
}
}
// //
// const filterChannel = (query) => {
// if (query) {
@ -219,6 +240,7 @@ const ConsumeSelectBy = async function (val) {
payType: 7, // payType 7
beanConsumeFan: {
...beanConsumeFan.value,
roleId: adminData.value.roleId,
flag: flag.value
}
};
@ -389,10 +411,10 @@ const handleCurrentChange = function (val) {
onMounted(async function () {
await getAdminData()
await getRoleChannel()
await ConsumeSelectBy()
await getChannel()
await getDept()
})
@ -499,7 +521,7 @@ const getTagText = (state) => {
<el-card class="card1" style="margin-bottom: 0.5vh;">
<el-col style="margin-bottom: 1vh">
<div class="select">
<div class="selectRow">
<div class="selectRow" v-if="showChannelFilter">
<el-text class="text">{{ t('common.jwcode') }}</el-text>
<el-input class="selectContent" v-model="beanConsumeFan.jwcode" :placeholder="t('common.jwcodePlaceholder')" clearable />
</div>

34
src/views/channelManage/reward/reward.vue

@ -40,7 +40,6 @@ const formatTime = (val) => val ? dayjs(val).format('YYYY-MM-DD HH:mm:ss') : ''
/*
====================数据=================================
*/
//
const adminData = ref({})
//
const tableData = ref([])
@ -83,7 +82,8 @@ const getGift = async function () {
//
const channels = ref([])
//
const showChannelFilter = ref(false)
const getChannel = async function () {
try {
const result = await request({
@ -103,6 +103,26 @@ const getChannel = async function () {
}
}
const getRoleChannel = async function () {
try {
if (!adminData.value || !adminData.value.roleId) {
showChannelFilter.value = true
return
}
const result = await request({
url: '/beanConsume/getRoleChannel',
data: { roleId: adminData.value.roleId }
})
const data = result.data ?? result
const channelName = typeof data === 'string' ? data : data.channelName
const allLabel = t('common.all')
showChannelFilter.value = channelName === allLabel || channelName === '全部'
} catch (error) {
console.log('请求角色频道失败', error)
showChannelFilter.value = true
}
}
//
const consumeTypes = ref([
{label: t('consume.consumeTypes.1'), value: 1},
@ -258,6 +278,7 @@ const selectLiveBy = async function (val) {
payType: 1, // payType 1
beanConsumeLive: {
...beanConsumeLive.value,
roleId: adminData.value.roleId,
flag: flag.value
}
};
@ -401,10 +422,11 @@ const handleCurrentChange = function (val) {
onMounted(async function () {
await getAdminData()
await selectLiveBy()
await getRoleChannel()
await getDept()
await getGift()
await selectLiveBy()
await getChannel()
await getGift()
})
@ -537,7 +559,7 @@ const getTagText = (state) => {
<el-option v-for="(item, index) in dept" :key="index" :label="item" :value="item"/>
</el-select>
</div>
<div class="selectRow" style="width: 14vw;">
<div class="selectRow" style="min-width: 14vw;">
<el-text class="text">{{ t('common.giftName') }}</el-text>
<el-select class="selectContent" v-model="beanConsumeLive.gift" :placeholder="t('common.giftNamePlaceholder')" clearable
filterable
@ -545,7 +567,7 @@ const getTagText = (state) => {
<el-option v-for="(item, index) in gifts" :key="index" :label="item" :value="item"/>
</el-select>
</div>
<div class="selectRow" style="min-width: 12vw;">
<div class="selectRow" style="min-width: 12vw;" v-if="showChannelFilter">
<el-text class="textB" size="large">{{ t('common.channel') }}</el-text>
<el-select class="selectContent" v-model="beanConsumeLive.liveChannel" :placeholder="t('common.channelPlaceholder')" clearable
filterable allow-create default-first-option>

1
src/views/consume/bean/dieHardFan.vue

@ -219,6 +219,7 @@ const ConsumeSelectBy = async function (val) {
payType: 7, // payType 7
beanConsumeFan: {
...beanConsumeFan.value,
roleId: adminData.value.roleId,
flag: flag.value
}
};

1
src/views/consume/bean/liveStream.vue

@ -258,6 +258,7 @@ const selectLiveBy = async function (val) {
payType: 1, // payType 1
beanConsumeLive: {
...beanConsumeLive.value,
roleId: adminData.value.roleId,
flag: flag.value
}
};

55
src/views/permissions/rolePermission.vue

@ -32,16 +32,25 @@ const getRoleObj = ref({
pageSize: 10
})
const permissionAddVisible = ref(false)
//
const addRole = ref({
roleName: '',
parentId: null,
checkedKeys: [],
market: ''
market: '',
//
channel: ''
})
const addRoleMarket = ref([])
//
const channelList = ref([t('common.all')])
//
const addHasChannel = ref(false)
//
const editHasChannel = ref(false)
const getRoleList = async function (val) {
if (!findMenuById(menuTree.value, permissionMapping.view_role_information)) {
//
ElMessage.error(t('elmessage.noPermissionText'))
return
}
@ -119,12 +128,18 @@ const getRoleArea = async function () {
//
const openPermissionAddVisible = function () {
permissionAddVisible.value = true
//
addHasChannel.value = false
addRole.value.channel = ''
getRoles()
getLists()
}
const closePermissionAddVisible = function () {
permissionAddVisible.value = false
//
addHasChannel.value = false
addRole.value.channel = ''
Ref.value.resetFields();
getRoleList()
}
@ -331,14 +346,15 @@ const filterPermission = (tree) => {
return true
})
}
//
//
const handleEditRolePermissionCheck = (checkedNodes, checkedInfo) => {
const { checkedKeys, checkedNodes: allCheckedNodes } = checkedInfo
//
if (allCheckedNodes.length === 0) {
permissionEditRoleObj.value.checkedKeys = []
ifHasChannel.value = false
//
editHasChannel.value = false
return
}
@ -349,21 +365,22 @@ const handleEditRolePermissionCheck = (checkedNodes, checkedInfo) => {
console.log('编辑角色选中的权限ID:', checkedKeys)
console.log('选中的节点数量:', allCheckedNodes.length)
if (checkedKeys.includes(124) || checkedKeys.includes(125) || checkedKeys.includes(126) || checkedKeys.includes(127)) {
ifHasChannel.value = true
// ->
editHasChannel.value = true
} else {
ifHasChannel.value = false
editHasChannel.value = false
}
};
//
const ifHasChannel = ref(false)
//
const handleCheckChange = async (checkedNodes, checkedInfo) => {
const { checkedKeys, checkedNodes: allCheckedNodes } = checkedInfo
//
if (allCheckedNodes.length === 0) {
addRole.value.checkedKeys = []
ifHasChannel.value = false
//
addHasChannel.value = false
return
}
@ -380,10 +397,11 @@ const handleCheckChange = async (checkedNodes, checkedInfo) => {
addRole.value.checkedKeys = Array.from(allKeys)
console.log('新增角色包含所有父级的选中项:', addRole.value.checkedKeys)
if (addRole.value.checkedKeys.includes(124)) {
ifHasChannel.value = true
// ->
addHasChannel.value = true
console.log('勾选了频道');
} else {
ifHasChannel.value = false
addHasChannel.value = false
}
}
const selectParentNodes = (treeData, nodeId, checkedKeys) => {
@ -437,6 +455,12 @@ const permissionEditRoleObj = ref({
//
const permissionEditRoleVisible = ref(false)
// 便
const closePermissionEditRoleVisible = () => {
permissionEditRoleVisible.value = false
editHasChannel.value = false
}
const collectIds2 = (tree) => {
let ids = []
tree.forEach((node) => {
@ -481,9 +505,10 @@ const permissionEditRoleInit = async function (row) {
console.log('permissionEditRoleObj.value', permissionEditRoleObj.value);
if (EditIds.includes(124)) {
ifHasChannel.value = true
//
editHasChannel.value = true
} else {
ifHasChannel.value = false
editHasChannel.value = false
}
try {
let roleId = permissionEditRoleObj.value.parentId;
@ -745,7 +770,7 @@ onMounted(async function () {
<span style="color: #999;">{{ t('common.noData') }}</span>
</div>
</el-form-item>
<el-form-item v-show="ifHasChannel" :label="t('common_add.channelName') + ':'" required>
<el-form-item v-show="addHasChannel" :label="t('common_add.channelName') + ':'" required>
<el-select v-model="addRole.channel" :placeholder="t('common_add.channelPlaceholder')" style="width: 220px" filterable clearable>
<el-option v-for="item in channelList" :key="item" :label="item" :value="item" />
</el-select>
@ -794,7 +819,7 @@ onMounted(async function () {
</div>
</el-form-item>
<el-form-item v-show="ifHasChannel" :label="t('common_add.channelName') + ':'" required>
<el-form-item v-show="editHasChannel" :label="t('common_add.channelName') + ':'" required>
<el-select v-model="permissionEditRoleObj.channel" :placeholder="t('common_add.channelPlaceholder')" style="width: 220px" clearable>
<el-option v-for="item in channelList" :key="item" :label="item" :value="item" />
</el-select>
@ -802,7 +827,7 @@ onMounted(async function () {
</el-form>
<div>
<el-button @click="permissionEditRoleVisible = false">{{ t('common.cancel') }}</el-button>
<el-button @click="closePermissionEditRoleVisible">{{ t('common.cancel') }}</el-button>
<el-button type="primary" @click="permissionEditRole">
{{ t('common.submit') }}
</el-button>

Loading…
Cancel
Save