1、审稿人14天超时 重新审稿邀请

2、nbsp 转换
3、H3标记为myh3
4、文章详情审稿和编委邮箱机构显示
5、稿号开头为Draft 状态为Reject->Awaiting Submission
6、作者端稿件重复(标题)
7、produce 增加 通讯作者详细地址
8、produce 增加 是否显示图文摘要1
This commit is contained in:
2026-02-10 09:36:35 +08:00
parent 9f108e7c81
commit 5edf128cfb
16 changed files with 680 additions and 546 deletions

View File

@@ -780,9 +780,8 @@ export default {
var that = this;
var str = content.replace(/^<p>\s*(.*?)\s*<\/p>$/, '$1').trim();
if (str.replace(/<br\s*\/?>/gi, '').trim() === '') {
str = '';
}
str = str.replace(/<br\s*\/?>/gi, '');
str = await that.$commonJS.decodeHtml(str);
await that.$api
@@ -1138,7 +1137,7 @@ export default {
});
},
async addCommentSetting(content) {
await this.$api
.post(this.urlList.addComment, {
am_id: content.am_id,
@@ -1161,8 +1160,10 @@ export default {
});
},
async addComment(content) {
var str = content.replace(/^<p>(.*?)<\/p>$/, '$1') ? content.replace(/^<p>(.*?)<\/p>$/, '$1') : '';
var str= this.$commonJS.transformHtmlString(content)
str=str.replace(/<br\s*\/?>/gi, '');
console.log("🚀 ~ addComment ~ content:", str);
if (str == '') {
this.$message({
type: 'warning',
@@ -1884,6 +1885,9 @@ export default {
// 确定保存图片
async savePic() {
var str = this.picStyle1.note ? await this.$commonJS.decodeHtml(this.picStyle1.note) : '';
var titleStr = this.picStyle1.title ? await this.$commonJS.decodeHtml(this.picStyle1.title) : '';
if (!this.picStyle.picUrl) {
@@ -1894,6 +1898,8 @@ export default {
this.$message.error('Please enter a title');
return;
}
str = str.replace(/<br\s*\/?>/gi, '');
titleStr = titleStr.replace(/<br\s*\/?>/gi, '');
const loading = this.$loading({
lock: true,
text: 'Loading...',
@@ -1969,28 +1975,42 @@ export default {
},
async saveTable(content) {
const cleanTableData = (tableList) => {
if (tableList.length == 0) {
return [];
} else {
// 假设第一行是表头,保存表头
const header = tableList[0];
if (tableList.length == 0) {
return [];
} else {
// 定义清理函数:去掉所有 br 标签和 TinyMCE 占位符
const cleanText = (text) => {
if (!text) return "";
return text.replace(/<br\s*\/?>/gi, '').trim();
};
// 从第二行开始,移除与表头相同的行
const cleanedTable = tableList.filter((row, index) => {
// 如果是第一行,则保留
if (index === 0) return true;
// 1. 获取处理后的干净表头
const header = tableList[0].map(cell => ({
...cell,
text: cleanText(cell.text)
}));
// 比较当前行的每个单元格与表头是否相同
const isHeaderRow = row.every((cell, cellIndex) => {
return cell.text === header[cellIndex].text;
});
// 2. 过滤逻辑
const cleanedTable = tableList.map((row) => {
// 首先:把每一行里的每个 cell.text 里的 <br> 都去掉
return row.map(cell => ({
...cell,
text: cleanText(cell.text)
}));
}).filter((row, index) => {
if (index === 0) return true;
return !isHeaderRow; // 只保留与表头不同的行
});
// 3. 此时比较的就是没有 <br> 的文本了
const isHeaderRow = row.every((cell, cellIndex) => {
return cell.text === header[cellIndex].text;
});
return cleanedTable;
}
};
return !isHeaderRow;
});
return cleanedTable;
}
};
var cleanedTableList = content.table ? content.table : [];
cleanedTableList = cleanTableData(content.table);
@@ -2014,11 +2034,15 @@ export default {
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
});
strNote = strNote.replace(/<br\s*\/?>/gi, '');
strTitle = strTitle.replace(/<br\s*\/?>/gi, '');
var tableStr=JSON.stringify(cleanedTableList)
if (this.lineStyle.visiTitle == 'Edit Table') {
this.$api
.post(this.urlList.editTable, {
amt_id: this.lineStyle.amt_id,
table_data: JSON.stringify(cleanedTableList),
table_data: tableStr,
html_data: content.html_data,
note: strNote,
title: strTitle