【合并v3.8.2最新版代码】

Squashed commit of the following:

commit f30a8c658a
Author: JEECG <445654970@qq.com>
Date:   Thu Jul 31 11:35:16 2025 +0800

    数据库缺少openapi微服务网关配置

commit e84d7726d2
Author: JEECG <445654970@qq.com>
Date:   Thu Jul 31 10:20:09 2025 +0800

    后台接口地址修改

commit 0f39802698
Author: JEECG <445654970@qq.com>
Date:   Thu Jul 31 09:56:24 2025 +0800

    docker自动化部署命令

commit a014a3ed0e
Author: JEECG <445654970@qq.com>
Date:   Wed Jul 30 21:55:16 2025 +0800

    v3.8.2 优化一键docker启动前后端

commit 5720d1a01e
Author: JEECG <445654970@qq.com>
Date:   Wed Jul 30 19:26:38 2025 +0800

    升级版本号到3.8.2

commit 5eed6ac6d2
Author: JEECG <445654970@qq.com>
Date:   Wed Jul 30 18:49:29 2025 +0800

    升级版本号到3.8.2

commit 0cfa1e223a
Author: JEECG <445654970@qq.com>
Date:   Wed Jul 30 18:28:10 2025 +0800

    v3.8.2 系统通知改造支持分类

commit 219869f4c0
Author: JEECG <445654970@qq.com>
Date:   Wed Jul 30 18:25:58 2025 +0800

    v3.8.2 版本前端代码

commit e6edde963a
Author: JEECG <445654970@qq.com>
Date:   Wed Jul 30 18:25:46 2025 +0800

    v3.8.2 版本后端代码

commit c44b66128e
Author: JEECG <445654970@qq.com>
Date:   Wed Jul 30 18:23:09 2025 +0800

    XXL-JOB(2.4.0 及以上)已被移除,分片参数获取方式变更。

commit 9356b04741
Author: JEECG <445654970@qq.com>
Date:   Wed Jul 30 10:57:52 2025 +0800

    升级online到3.8.2-beta

commit d0a094f9a3
Author: JEECG <445654970@qq.com>
Date:   Wed Jul 30 10:57:31 2025 +0800

    升级mybatis-plus到3.5.12、升级jsqlparser到4.9

commit 73eb625737
Author: JEECG <445654970@qq.com>
Date:   Wed Jul 30 09:51:34 2025 +0800

    升级jimureport到v2.1.1

commit 74880705b8
Author: JEECG <445654970@qq.com>
Date:   Wed Jul 30 09:18:46 2025 +0800

    升级online到3.8.2-beta

# Conflicts:
#	jeecg-boot/jeecg-boot-base-core/pom.xml
#	jeecg-boot/jeecg-boot-base-core/src/main/java/org/jeecg/config/Swagger3Config.java
#	jeecg-boot/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/JeecgSystemApplication.java
#	jeecg-boot/jeecg-server-cloud/jeecg-visual/jeecg-cloud-sentinel/pom.xml
#	jeecg-boot/pom.xml
This commit is contained in:
JEECG
2025-07-31 14:23:45 +08:00
parent f67cfa1bfb
commit 6c15b45a8c
190 changed files with 6482 additions and 2501 deletions

View File

@ -1,5 +1,5 @@
<template>
<a-list item-layout="horizontal" :data-source="messageList">
<a-list item-layout="horizontal" :data-source="messageList" :locale="locale">
<template #loadMore>
<div
v-if="messageList && messageList.length > 0 && !loadEndStatus && !loadingMoreStatus"
@ -16,12 +16,23 @@
</template>
<template #renderItem="{ item }">
<a-list-item>
<a-list-item :style="{ background: item?.izTop && item.izTop == 1 ? '#f7f7f7' : 'auto' }">
<template #actions>
<a-rate :value="item.starFlag=='1'?1:0" :count="1" @click="clickStar(item)" style="cursor: pointer" disabled />
</template>
<a-list-item-meta :description="item.createTime">
<!-- update-begin-author:taoyan date:2023-5-10 for: QQYUN-4744系统通知6系统通知@人后对方看不到是哪个表单@没有超链接 -->
<a-list-item-meta>
<template #description>
<div v-if="isFormComment(item)" style="background: #f7f7f7;color: #555;padding: 2px 5px;white-space:nowrap;overflow: hidden">
<div v-html="getHtml(item.msgContent)"></div>
</div>
<div>
{{item.createTime}}
</div>
</template>
<!-- update-end-author:taoyan date:2023-5-10 for: QQYUN-4744系统通知6系统通知@人后对方看不到是哪个表单@没有超链接 -->
<template #title>
<div style="position: relative">
<!-- <span style="display: inline-block; position: absolute; left: -16px">
@ -29,16 +40,17 @@
</span>-->
<span>{{ getMsgCategory(item) }}</span>
<span v-if="item.busType == 'bpm'" class="bpm-cuiban-content" v-html="item.msgContent">
<span v-if="item.busType == 'bpm' || item.busType == 'bpm_cc' || item.busType == 'msg_node' || item.busType == 'bpm_msg_node'" class="bpm-cuiban-content" v-html="item.msgContent">
</span>
<a-tooltip v-else>
<template #title>
<div v-html="item.msgContent"></div>
</template>
{{ item.titile }}
</a-tooltip>
<!-- <a-tooltip v-else>-->
<!-- <template #title>-->
<!-- <div v-html="item.msgContent"></div>-->
<!-- </template>-->
<!-- {{ item.titile }}-->
<!-- </a-tooltip>-->
<span v-else>{{ item.titile }}</span>
<a @click="showMessageDetail(item)" style="margin-left: 16px">查看详情</a>
<a @click="showMessageDetail(item)" style="margin-left: 16px">{{ getHrefText(item) }}</a>
</div>
</template>
<template #avatar>
@ -62,7 +74,7 @@
</a-badge>
<a-avatar v-else style="background: #79919d"><alert-outlined style="font-size: 16px"/></a-avatar>
</template>
<template v-else>
<a-badge dot v-if="noRead(item)" class="msg-no-read">
<a-avatar style="background: #79919d"><bell-filled style="font-size: 16px" title="未读消息"/></a-avatar>
@ -74,14 +86,21 @@
</a-list-item>
</template>
</a-list>
<!-- update-begin-author:liusq date:2023-10-26 for: [QQYUN-6713]系统通知打开弹窗修改 -->
<keep-alive>
<component v-if="currentModal" v-bind="bindParams" :key="currentModal" :is="currentModal" @register="modalRegCache[currentModal].register" />
</keep-alive>
<!-- update-end-author:liusq date:2023-10-26 for: [QQYUN-6713]系统通知打开弹窗修改 -->
</template>
<script>
import { FilterOutlined, CloseOutlined, BellFilled, ExclamationOutlined, MailOutlined,InteractionOutlined, AlertOutlined } from '@ant-design/icons-vue';
import { useSysMessage, useMessageHref } from './useSysMessage';
import {getGloablEmojiIndex, useEmojiHtml} from "/@/components/jeecg/comment/useComment";
import { ref, h, watch } from "vue";
export default {
name: 'SysMessageList',
components: {
@ -91,23 +110,41 @@
ExclamationOutlined,
MailOutlined,
InteractionOutlined,
AlertOutlined
AlertOutlined,
},
props:{
star: {
type:Boolean,
default: false
}
},
isLowApp:{
type:Boolean,
default: false
},
messageCount: {
type: Number,
default: 0
},
cancelStarAfterDel: {
type: Boolean,
default: false,
},
},
emits:['close', 'detail'],
emits:['close', 'detail', 'clear', 'close-modal'],
setup(props, {emit}){
const { messageList,loadEndStatus,loadingMoreStatus,onLoadMore,noRead, getMsgCategory, searchParams, reset, loadData, updateStarMessage } = useSysMessage();
const { messageList,loadEndStatus,loadingMoreStatus,onLoadMore,noRead, getMsgCategory, getHrefText, searchParams, reset, loadData, updateStarMessage } = useSysMessage(setLocaleText);
//系统消息
const messageCount = ref(0);
function reload(params){
let { fromUser, rangeDateKey, rangeDate } = params;
let { fromUser, rangeDateKey, rangeDate, noticeType } = params;
searchParams.fromUser = fromUser||'';
searchParams.rangeDateKey = rangeDateKey||'';
searchParams.rangeDate = rangeDate||[];
searchParams.noticeType = noticeType || '';
//list列表为空时赋初始值
locale.value = { locale: { emptyText: `<a-empty />` }};
if(props.star===true){
searchParams.starFlag = '1'
}else{
@ -116,25 +153,84 @@
reset();
loadData();
}
function clickStar(item){
console.log(item)
updateStarMessage(item);
// update-begin--author:liaozhiyang---date:20240717---for【TV360X-349】通知-标星消息tab列表取消标星后该条信息从标星列表移除
if (item.starFlag == '1' && props.cancelStarAfterDel) {
const findIndex = messageList.value.findIndex((item) => item.id === item.id);
if (findIndex !== -1) {
messageList.value.splice(findIndex, 1);
return;
}
}
// update-end--author:liaozhiyang---date:20240717---for【TV360X-349】通知-标星消息tab列表取消标星后该条信息从标星列表移除
if(item.starFlag=='1'){
item.starFlag = '0'
}else{
item.starFlag = '1'
}
}
const { goPage } = useMessageHref(emit);
// update-begin-author:taoyan date:2023-5-10 for: QQYUN-4744【系统通知】6、系统通知@人后,对方看不到是哪个表单@的,没有超链接
const { goPage, currentModal, modalRegCache, bindParams, isFormComment } = useMessageHref(emit, props);
//const emojiIndex = inject('$globalEmojiIndex')
const emojiIndex = getGloablEmojiIndex()
const { getHtml } = useEmojiHtml(emojiIndex);
// update-end-author:taoyan date:2023-5-10 for: QQYUN-4744【系统通知】6、系统通知@人后,对方看不到是哪个表单@的,没有超链接
function showMessageDetail(record){
record.readFlag = '1'
goPage(record);
emit('close', record.id)
//update-begin---author:wangshuai---date:2024-06-11---for:【TV360X-791】收到邮件通知点击回复应该把通知公告列表关闭---
if(record.busType==='email'){
emit('close-modal')
}
//update-end---author:wangshuai---date:2024-06-11---for:【TV360X-791】收到邮件通知点击回复应该把通知公告列表关闭---
}
//返回list列表为空数据时展示的内容
const locale = ref({});
/**
* 未读点击事件
*/
function noReadClick() {
emit('clear')
}
/**
* 设置list为空的时候提示文本
*
*/
function setLocaleText() {
//update-begin---author:wangshuai---date:2024-04-24---for:【QQYUN-9105】未读有问题---
let rangeDateKey = searchParams.rangeDateKey;
let value = messageCount.value;
if (value > 0 && !props.star && rangeDateKey && rangeDateKey === '7day') {
//update-end---author:wangshuai---date:2024-04-24---for:【QQYUN-9105】未读有问题---
locale.value = {
emptyText: h(
'span',
{
style: {'color': 'rgb(255,154,0)', 'cursor': 'pointer', 'text-align': 'left', 'display': 'block'},
onClick: () => {
noReadClick();
},
}, `还剩余未读消息(${value > 99 ? '99+' : value})`)
}
} else {
locale.value = { locale: {emptyText: `<a-empty />` }};
}
}
//监听信息数量
watch(() => props.messageCount, (value) => {
messageCount.value = value;
}, { immediate: true })
return {
messageList,
loadEndStatus,
@ -142,11 +238,18 @@
onLoadMore,
noRead,
getMsgCategory,
getHrefText,
reload,
clickStar,
showMessageDetail
}
}
showMessageDetail,
isFormComment,
getHtml,
modalRegCache,
currentModal,
bindParams,
locale,
};
},
};
</script>