更改 新加青年编委报错问题 代码执行顺序有误

This commit is contained in:
2026-05-25 15:03:01 +08:00
parent e03be40fc6
commit d4e158105e
5 changed files with 293 additions and 67 deletions

View File

@@ -1587,6 +1587,19 @@ const en = {
nextRef: 'Next reference',
manuscript: 'Manuscript',
excerpt: '(excerpt)',
simManuscriptPage: 'Simulated manuscript page',
locationMatcher: 'Location context matcher',
manuscriptSection: 'Manuscript section',
highlightedMatch: 'Highlighted match',
excerptEmpty: 'No excerpt available yet.',
annotationComment: 'Comment',
annotationDelete: 'Suggest removal',
annotationRevision: 'Revision',
annotationOkDefault: 'This citation matches the surrounding argument; keep as is.',
annotationReviewDefault: 'Verify that this statement aligns with the cited source.',
annotationDeleteDefault: 'This citation is weakly related to the paragraph focus; consider removing or rephrasing.',
annotationYearDefault: 'The publication year in the text does not match the reference.',
annotationMethodDefault: 'When borrowing methods, note differences in cohort and time range from the cited study.',
citeListTitle: 'This reference · all in-text citations',
citeListTotal: '{n} citation(s)',
current: 'Current',

View File

@@ -1568,6 +1568,19 @@ const zh = {
nextRef: '下一篇参考文献',
manuscript: '稿件',
excerpt: '(摘录)',
simManuscriptPage: '模拟稿件页面',
locationMatcher: '引用位置匹配',
manuscriptSection: '稿件段落',
highlightedMatch: '高亮匹配',
excerptEmpty: '暂无段落原文,待接口返回',
annotationComment: '批注',
annotationDelete: '建议删除',
annotationRevision: '修订',
annotationOkDefault: '此处引用与正文论述匹配,可保留。',
annotationReviewDefault: '建议核对此处表述与文献是否一致。',
annotationDeleteDefault: '该处引用与段落主旨关联较弱,可考虑删去或改述。',
annotationYearDefault: '正文年份与文献出版年不一致。',
annotationMethodDefault: '借用方法时需交代与本文研究人群、年份范围的差异。',
citeListTitle: '本参考文献 · 全部引用处',
citeListTotal: '共 {n} 处',
current: '当前',

View File

@@ -622,18 +622,13 @@
</template>
<div v-if="relevanceReviewItem" class="ref-review">
<div class="ref-review-body">
<div class="ref-review-doc">
<div class="ref-review-doc-label">
<div class="ref-review-doc-label-left">
<span>{{ $t('refRelevance.manuscript') }}</span>
<span v-if="!relevanceReviewFromMain" class="ref-review-doc-src">{{ $t('refRelevance.excerpt') }}</span>
</div>
<span v-if="relevanceCiteLocatorTip" class="ref-review-cite-locator ref-review-cite-locator--doc-end">{{
relevanceCiteLocatorTip
}}</span>
<div class="ref-review-doc ref-review-doc--sim">
<div class="ref-review-doc-label ref-review-doc-label--sim">
<span class="ref-review-doc-sim-title">{{ refRelevanceT('simManuscriptPage') }}</span>
<span class="ref-review-doc-locator">{{ refRelevanceT('locationMatcher') }}</span>
</div>
<div
class="ref-review-para ref-review-word"
class="ref-review-para ref-review-word ref-review-ms-scroll"
ref="relevanceReviewPara"
v-loading="articleMainsLoading"
v-html="relevanceReviewMainHtml"
@@ -722,6 +717,40 @@
<script>
import VueUeditorWrap from 'vue-ueditor-wrap'; // ES6 Module
const REF_RELEVANCE_UI_FALLBACK = {
en: {
simManuscriptPage: 'Simulated manuscript page',
locationMatcher: 'Location context matcher',
manuscriptSection: 'Manuscript section',
highlightedMatch: 'Highlighted match',
excerptEmpty: 'No excerpt available yet.',
annotationComment: 'Comment',
annotationDelete: 'Suggest removal',
annotationRevision: 'Revision',
annotationOkDefault: 'This citation matches the surrounding argument; keep as is.',
annotationReviewDefault: 'Verify that this statement aligns with the cited source.',
annotationDeleteDefault: 'This citation is weakly related to the paragraph focus; consider removing or rephrasing.',
annotationYearDefault: 'The publication year in the text does not match the reference.',
annotationMethodDefault: 'When borrowing methods, note differences in cohort and time range from the cited study.'
},
zh: {
simManuscriptPage: '模拟稿件页面',
locationMatcher: '引用位置匹配',
manuscriptSection: '稿件段落',
highlightedMatch: '高亮匹配',
excerptEmpty: '暂无段落原文,待接口返回',
annotationComment: '批注',
annotationDelete: '建议删除',
annotationRevision: '修订',
annotationOkDefault: '此处引用与正文论述匹配,可保留。',
annotationReviewDefault: '建议核对此处表述与文献是否一致。',
annotationDeleteDefault: '该处引用与段落主旨关联较弱,可考虑删去或改述。',
annotationYearDefault: '正文年份与文献出版年不一致。',
annotationMethodDefault: '借用方法时需交代与本文研究人群、年份范围的差异。'
}
};
export default {
data() {
return {
@@ -907,9 +936,36 @@ export default {
});
}
}
},
'$i18n.locale'() {
if (!this.relevanceReviewVisible || !this.relevanceReviewItem) return;
if (this.relevanceReviewRefRow) {
this.getRefRelevanceList(this.relevanceReviewRefRow).forEach((row) => {
delete row.annotations;
this.enrichRelevanceAnnotations(row);
});
}
this.refreshRelevanceMainHtml();
}
},
methods: {
refRelevanceT(key) {
const path = 'refRelevance.' + key;
if (this.$te && this.$te(path)) {
return this.$t(path);
}
const locale = this.$i18n && this.$i18n.locale === 'zh' ? 'zh' : 'en';
const fb = REF_RELEVANCE_UI_FALLBACK[locale] || REF_RELEVANCE_UI_FALLBACK.en;
return (fb && fb[key]) || this.$t(path);
},
resolveRelevanceDesc(item) {
if (!item) return '';
const isZh = this.$i18n && this.$i18n.locale === 'zh';
const desc = isZh
? String(item.ai_desc || '').trim()
: String(item.ai_desc_en || item.ai_desc || '').trim();
return desc;
},
formatTitle(title) {
if (!title) return '';
@@ -1158,14 +1214,14 @@ export default {
enrichRelevanceAnnotations(item) {
if (!item || (Array.isArray(item.annotations) && item.annotations.length)) return;
const needFix = this.isRelevanceNeedModify(item);
const desc = String(item.ai_desc || '').trim();
const desc = this.resolveRelevanceDesc(item);
if (!needFix) {
item.annotations = [
{
id: 1,
type: 'comment',
type_label: '批注',
text: desc || '此处引用与正文论述匹配,可保留。'
type_label: this.refRelevanceT('annotationComment'),
text: desc || this.refRelevanceT('annotationOkDefault')
}
];
return;
@@ -1178,37 +1234,37 @@ export default {
{
id: 1,
type: 'comment',
type_label: '批注',
type_label: this.refRelevanceT('annotationComment'),
anchor: anchor,
text: desc || item.modify_brief || '建议核对此处表述与文献是否一致。'
text: desc || item.modify_brief || this.refRelevanceT('annotationReviewDefault')
}
];
if (/精简|删除|弱化/.test(desc + (item.modify_brief || ''))) {
if (/精简|删除|弱化|delete|remove|trim|weak/i.test(desc + (item.modify_brief || ''))) {
annotations.push({
id: 2,
type: 'delete',
type_label: '建议删除',
text: '该处引用与段落主旨关联较弱,可考虑删去或改述。'
type_label: this.refRelevanceT('annotationDelete'),
text: this.refRelevanceT('annotationDeleteDefault')
});
}
if (/年份|2023|2024|不一致/.test(desc + snippet)) {
if (/年份|2023|2024|不一致|year|mismatch/i.test(desc + snippet)) {
annotations.push({
id: annotations.length + 1,
type: 'revision',
type_label: '修订',
type_label: this.refRelevanceT('annotationRevision'),
anchor: '2023',
text: '正文年份与文献出版年不一致。',
text: this.refRelevanceT('annotationYearDefault'),
original: '2023',
suggested: '2024'
});
}
if (/差异|说明|方法|人群/.test(desc)) {
if (/差异|说明|方法|人群|difference|method|cohort/i.test(desc)) {
annotations.push({
id: annotations.length + 1,
type: 'revision',
type_label: '修订',
type_label: this.refRelevanceT('annotationRevision'),
anchor: anchor,
text: '借用方法时需交代与本文研究人群、年份范围的差异。',
text: this.refRelevanceT('annotationMethodDefault'),
original: 'as described previously',
suggested: 'with adaptations as noted below'
});
@@ -1230,7 +1286,9 @@ export default {
label: '高相关',
need_modify: false,
modify_brief: '引用恰当',
ai_desc: '引言段用于概括深度学习在医学影像中的应用背景,与文献主题一致,引用恰当。'
ai_desc: '引言段用于概括深度学习在医学影像中的应用背景,与文献主题一致,引用恰当。',
ai_desc_en:
'Introduction: supports the background on deep learning in medical imaging; appropriate citation.'
}
],
[
@@ -1246,7 +1304,9 @@ export default {
label: '高相关',
need_modify: false,
modify_brief: '可保留',
ai_desc: '直接支撑 CNN 与 ViT 在 COVID-19 影像检测中的对比论述,高度相关。'
ai_desc: '直接支撑 CNN 与 ViT 在 COVID-19 影像检测中的对比论述,高度相关。',
ai_desc_en:
'Directly supports the CNN vs ViT comparison for COVID-19 imaging; highly relevant.'
}
],
[
@@ -1262,7 +1322,9 @@ export default {
label: '较相关',
need_modify: false,
modify_brief: '可保留',
ai_desc: '方法段引用:实验流程与文献中的 CNN/ViT 对比设置基本一致,可作为方法参考。'
ai_desc: '方法段引用:实验流程与文献中的 CNN/ViT 对比设置基本一致,可作为方法参考。',
ai_desc_en:
'Methods: the experimental setup aligns with the cited CNN/ViT comparison; suitable as a methods reference.'
},
{
cite_index: 2,
@@ -1276,7 +1338,9 @@ export default {
label: '部分相关',
need_modify: true,
modify_brief: '建议精简或改写',
ai_desc: '讨论段仅用于对比任务设定差异,与本文核心结论关联偏弱,建议精简表述。'
ai_desc: '讨论段仅用于对比任务设定差异,与本文核心结论关联偏弱,建议精简表述。',
ai_desc_en:
'Discussion: used only to contrast task settings; weak link to main findings—consider trimming.'
}
],
[
@@ -1292,7 +1356,8 @@ export default {
label: '待核实',
need_modify: true,
modify_brief: '年份不一致',
ai_desc: '正文年份与文献出版年不一致,需核对后再保留该处引用。'
ai_desc: '正文年份与文献出版年不一致,需核对后再保留该处引用。',
ai_desc_en: 'Publication year in the text does not match the reference; verify before keeping this citation.'
}
],
[
@@ -1308,7 +1373,9 @@ export default {
label: '高相关',
need_modify: false,
modify_brief: '可保留',
ai_desc: '结果段第 1 处:直接引用 CNN 与 ViT 在 Brain MRI 数据集上的性能对比结论,高度匹配。'
ai_desc: '结果段第 1 处:直接引用 CNN 与 ViT 在 Brain MRI 数据集上的性能对比结论,高度匹配。',
ai_desc_en:
'Results (cite 1): directly cites CNN vs ViT performance on brain MRI; strong match.'
},
{
cite_index: 2,
@@ -1321,7 +1388,9 @@ export default {
label: '方法参考',
need_modify: true,
modify_brief: '需补充差异说明',
ai_desc: '方法段借用训练超参数设置,但数据集规模与预处理步骤不同,需补充说明。'
ai_desc: '方法段借用训练超参数设置,但数据集规模与预处理步骤不同,需补充说明。',
ai_desc_en:
'Methods: borrows training hyperparameters; dataset size and preprocessing differ—clarify in text.'
},
{
cite_index: 3,
@@ -1334,7 +1403,9 @@ export default {
label: '弱相关',
need_modify: true,
modify_brief: '建议删除',
ai_desc: '讨论段第 3 处:文献未涉及边缘部署主题,与本文实验结论关联较弱,建议弱化或删除。'
ai_desc: '讨论段第 3 处:文献未涉及边缘部署主题,与本文实验结论关联较弱,建议弱化或删除。',
ai_desc_en:
'Discussion (cite 3): source does not address edge deployment; weak tie—consider removing.'
}
],
[
@@ -1350,7 +1421,8 @@ export default {
label: '背景相关',
need_modify: true,
modify_brief: '不宜作主要依据',
ai_desc: '仅作混合架构背景铺垫,不宜作为本文 CNN vs ViT 对比的主要论据。'
ai_desc: '仅作混合架构背景铺垫,不宜作为本文 CNN vs ViT 对比的主要论据。',
ai_desc_en: 'Background on hybrid architectures only; not a primary basis for the CNN vs ViT comparison.'
}
],
[
@@ -1366,7 +1438,8 @@ export default {
label: '高相关',
need_modify: false,
modify_brief: '可保留',
ai_desc: '与重复条目 [4] 相同文献,此处引用结论与正文数据量依赖性论述一致。'
ai_desc: '与重复条目 [4] 相同文献,此处引用结论与正文数据量依赖性论述一致。',
ai_desc_en: 'Same source as ref. [4]; citation aligns with the data-availability argument in the text.'
}
],
[
@@ -1382,7 +1455,8 @@ export default {
label: '较相关',
need_modify: false,
modify_brief: '可保留',
ai_desc: '讨论段引用 ViT 可解释性优势,与本文模型对比讨论方向一致。'
ai_desc: '讨论段引用 ViT 可解释性优势,与本文模型对比讨论方向一致。',
ai_desc_en: 'Discussion cites ViT interpretability; consistent with the model-comparison narrative.'
}
],
[
@@ -1397,7 +1471,9 @@ export default {
label: '部分相关',
need_modify: true,
modify_brief: '建议精简或改写',
ai_desc: '预处理流程引用合理,但文献针对 CT 影像,与本文 MRI 模态不完全匹配,宜注明差异。'
ai_desc: '预处理流程引用合理,但文献针对 CT 影像,与本文 MRI 模态不完全匹配,宜注明差异。',
ai_desc_en:
'Preprocessing citation is reasonable, but the source uses CT while this study uses MRI—note the difference.'
},
{
cite_index: 2,
@@ -1410,7 +1486,8 @@ export default {
label: '弱相关',
need_modify: true,
modify_brief: '建议删除',
ai_desc: '筛查系统论述与本文模型性能对比主题偏离,建议删除或改述。'
ai_desc: '筛查系统论述与本文模型性能对比主题偏离,建议删除或改述。',
ai_desc_en: 'Screening-system claim is off-topic for a model-comparison study—remove or rephrase.'
}
],
[
@@ -1426,7 +1503,8 @@ export default {
label: '高相关',
need_modify: false,
modify_brief: '引用恰当',
ai_desc: '讨论段展望集成策略,与全文 CNN/ViT 对比研究脉络一致,可保留。'
ai_desc: '讨论段展望集成策略,与全文 CNN/ViT 对比研究脉络一致,可保留。',
ai_desc_en: 'Discussion outlook on ensemble strategies fits the CNN/ViT comparison thread; keep.'
}
],
[
@@ -1442,7 +1520,9 @@ export default {
label: '高相关',
need_modify: false,
modify_brief: '可保留',
ai_desc: '结论段综述性引用,用于归纳 transformer 在医学影像中的研究趋势,匹配度高。'
ai_desc: '结论段综述性引用,用于归纳 transformer 在医学影像中的研究趋势,匹配度高。',
ai_desc_en:
'Conclusion: survey-style citation summarizing transformer trends in medical imaging; strong match.'
}
]
];
@@ -1622,7 +1702,7 @@ export default {
},
getRelevanceInsightText(item) {
if (!item) return '';
const desc = String(item.ai_desc || '').trim();
const desc = this.resolveRelevanceDesc(item);
if (desc) return desc;
const anns = this.getRelevanceAnnotations(item);
return anns.length ? String(anns[0].text || '') : '';
@@ -1893,8 +1973,40 @@ export default {
if (idx < 0) return html;
return this.wrapHtmlRange(html, idx, idx + plainText.length, markClass);
},
highlightCiteContextInHtml(html, matchIndex, matchLen, highlightWholeBlock) {
if (!html) return html;
wrapManuscriptSectionHtml(innerHtml, isMatch, extraClass) {
const sectionCls = isMatch ? 'ref-ms-section is-match' : 'ref-ms-section is-muted';
const extra = extraClass ? ' ' + extraClass : '';
const matchTag = isMatch
? '<span class="ref-ms-match-tag">' + this.refRelevanceT('highlightedMatch') + '</span>'
: '';
return (
'<div class="' +
sectionCls +
extra +
'">' +
'<div class="ref-ms-section-head">' +
'<span class="ref-ms-section-label">' +
this.refRelevanceT('manuscriptSection') +
'</span>' +
matchTag +
'</div>' +
'<div class="ref-ms-section-body">' +
innerHtml +
'</div>' +
'</div>'
);
},
highlightCiteContextInHtml(html, matchIndex, matchLen, highlightWholeBlock, bracketOnly) {
if (!html)
return html;
if (bracketOnly) {
if (matchIndex < 0 || !matchLen) return html;
const markText = this.extractCiteMarkTextFromHtml(html, matchIndex, matchLen);
if (markText) {
return this.wrapFirstPlainTextInHtml(html, markText, 'ref-review-cite-bracket');
}
return html;
}
if (highlightWholeBlock) {
let out = '<mark class="ref-review-cite-active ref-review-cite-para">' + html + '</mark>';
if (matchIndex >= 0 && matchLen) {
@@ -2054,12 +2166,14 @@ export default {
if (!html && block.type !== 0 && block.type !== '0' && block.type != null) {
return;
}
if (loc && loc.block && loc.block.am_id === block.am_id) {
const isMatch = !!(loc && loc.block && loc.block.am_id === block.am_id);
if (isMatch) {
html = this.highlightCiteContextInHtml(
html,
loc.matchIndex,
loc.matchLen,
loc.highlightWholeBlock
loc.highlightWholeBlock,
true
);
}
if (activeAmId != null && block.am_id == activeAmId && item) {
@@ -2067,9 +2181,9 @@ export default {
}
const cls = this.getMainBlockClass(block);
const amId = block.am_id != null ? block.am_id : '';
parts.push(
'<div class="' + cls + '"' + (amId !== '' ? ' data-am-id="' + amId + '"' : '') + '>' + (html || '') + '</div>'
);
const amAttr = amId !== '' ? ' data-am-id="' + amId + '"' : '';
const blockHtml = ['<div class="', cls, '"', amAttr, '>', html || '', '</div>'].join('');
parts.push(this.wrapManuscriptSectionHtml(blockHtml, isMatch));
});
return parts.join('');
},
@@ -2124,6 +2238,7 @@ export default {
const container = this.$refs.relevanceReviewPara;
if (!container) return;
const mark =
container.querySelector('.ref-ms-section.is-match') ||
container.querySelector('.ref-review-cite-bracket') ||
container.querySelector('.ref-review-cite-para');
if (!mark) return;
@@ -2241,8 +2356,7 @@ export default {
.replace(/"/g, '&quot;');
},
formatRelevanceParaHtml(item) {
let html = this.escapeRelevanceHtml(this.formatRelevanceSnippet(item) || '(暂无段落原文,待接口返回)');
html = '<mark class="ref-review-cite-active">' + html + '</mark>';
let html = this.escapeRelevanceHtml(this.formatRelevanceSnippet(item) || this.refRelevanceT('excerptEmpty'));
const anns = this.getRelevanceAnnotations(item);
anns.forEach((ann) => {
const anchor = String(ann.anchor || '').trim();
@@ -2252,7 +2366,8 @@ export default {
ann.type === 'revision' ? 'ref-review-mark ref-review-mark--rev' : 'ref-review-mark ref-review-mark--cmt';
html = html.split(esc).join('<mark class="' + markClass + '">' + esc + '</mark>');
});
return html;
const body = '<p class="ref-ms-excerpt-text">' + html + '</p>';
return this.wrapManuscriptSectionHtml(body, true, 'is-excerpt');
},
wordTextOp() {
////console.log(this.wordText)
@@ -4119,6 +4234,37 @@ export default {
min-height: 420px;
max-height: min(68vh, 620px);
}
.ref-review-doc--sim {
border-color: #dce3ed;
background: #fff;
}
.ref-review-doc-label--sim {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
padding: 10px 14px;
font-size: 11px;
font-weight: 600;
color: #64748b;
border-bottom: 1px solid #e4e9f0;
background: #f8fafc;
letter-spacing: 0.02em;
}
.ref-review-doc-sim-title {
color: #475569;
}
.ref-review-doc-locator {
font-size: 11px;
font-weight: 500;
color: #94a3b8;
text-transform: none;
letter-spacing: 0;
}
.ref-review-ms-scroll {
padding: 12px 14px;
background: #fbfcfe;
}
.ref-review-doc-label,
.ref-review-pane-label {
padding: 8px 14px;
@@ -4193,6 +4339,55 @@ export default {
text-align: justify;
color: #606266;
}
::v-deep .ref-ms-section {
margin-bottom: 10px;
border-radius: 6px;
transition: opacity 0.2s ease;
}
::v-deep .ref-ms-section.is-muted {
opacity: 0.36;
pointer-events: none;
}
::v-deep .ref-ms-section.is-match {
opacity: 1;
border: 1px dashed #409eff;
background: #f0f7ff;
box-shadow: 0 0 0 1px rgba(64, 158, 255, 0.1);
}
::v-deep .ref-ms-section.is-excerpt {
margin-bottom: 0;
}
::v-deep .ref-ms-section-head {
display: flex;
align-items: center;
gap: 8px;
padding: 8px 12px 4px;
}
::v-deep .ref-ms-section-label {
font-size: 10px;
font-weight: 600;
letter-spacing: 0.03em;
color: #94a3b8;
}
::v-deep .ref-ms-match-tag {
font-size: 10px;
font-weight: 700;
letter-spacing: 0.02em;
color: #409eff;
background: #dbeafe;
padding: 2px 8px;
border-radius: 999px;
}
::v-deep .ref-ms-section-body {
padding: 2px 12px 12px;
}
::v-deep .ref-ms-excerpt-text {
margin: 0;
font-size: 14px;
line-height: 1.65;
color: #303133;
text-align: justify;
}
::v-deep .ref-review-word .isTitleH1.pMainH1,
::v-deep .ref-review-word .pMainH1 {
font-family: 'Charis SIL', serif;
@@ -4490,12 +4685,12 @@ export default {
}
::v-deep mark.ref-review-cite-bracket {
display: inline;
padding: 0 3px;
padding: 1px 6px;
border-radius: 3px;
background: #fff;
color: #e6a23c;
background: #409eff;
color: #fff;
font-weight: 700;
box-shadow: 0 0 0 2px #e6a23c;
box-shadow: none;
vertical-align: baseline;
line-height: inherit;
animation: none !important;

View File

@@ -75,25 +75,25 @@
<el-table-column label="Contributions" align="center" width="150">
<template slot-scope="scope">
<div class="Contributions">
<div>Articles: <em v-if="scope.row.articles.length > 0">{{scope.row.articles.length}}</em><em v-else>0</em> /
<em v-if="scope.row.articles_all.length > 0">{{scope.row.articles_all.length}}</em><em v-else>0</em></div>
<div>Reviewes: <em v-if="scope.row.reviewes.length > 0">{{scope.row.reviewes.length}}</em><em v-else>0</em></div>
<div>Articles: <em v-if="scope.row&&scope.row.articles.length > 0">{{scope.row.articles.length}}</em><em v-else>0</em> /
<em v-if="scope.row&&scope.row.articles_all.length > 0">{{scope.row.articles_all.length}}</em><em v-else>0</em></div>
<div>Reviewes: <em v-if="scope.row&&scope.row.reviewes.length > 0">{{scope.row.reviewes.length}}</em><em v-else>0</em></div>
</div>
</template>
</el-table-column>
<el-table-column label="H-WOS" width="110px" align="center">
<template slot-scope="scope">
<p v-html="colorIndex(scope.row.wos_index,scope.row.wos_time)"></p>
<p v-if="scope.row" v-html="colorIndex(scope.row.wos_index,scope.row.wos_time)"></p>
</template>
</el-table-column>
<el-table-column label="H-Google" width="110px" align="center">
<template slot-scope="scope">
<p v-html="colorIndex(scope.row.google_index,scope.row.google_time)"></p>
<p v-if="scope.row" v-html="colorIndex(scope.row.google_index,scope.row.google_time)"></p>
</template>
</el-table-column>
<el-table-column prop="grade" label="Grade" width="110px" align="center">
<template slot-scope="scope">
<p style="display: inline-block;" v-if="scope.row.starList_mark!=0">
<p style="display: inline-block;" v-if="scope.row&&scope.row.starList_mark!=0">
<img src="../../assets/img/star-all.png" v-for="item in scope.row.starList"
v-if="scope.row.starList_mark<=8&&item.star==1" class="starSty">
<img src="../../assets/img/star-traf.png" v-for="item in scope.row.starList"
@@ -107,7 +107,7 @@
</template>
</el-table-column>
<el-table-column label="Term of service" align="center" width="160">
<template slot-scope="scope">
<template slot-scope="scope" v-if="scope.row">
<p v-for="item in scope.row.sd">
{{formatYear(item.start_date)}}
<span style="margin: 0 3px;">-</span>
@@ -153,7 +153,7 @@
</div>
<!-- 添加弹出框 -->
<el-dialog title="Add Young Scientist" :visible.sync="addVisible" width="620px" :close-on-click-modal="false"
<el-dialog destroy-on-close title="Add Young Scientist" :visible.sync="addVisible" width="620px" :close-on-click-modal="false"
@close='addVisCancle'>
<el-form ref="add_Form" :model="addForm" :rules="rules" label-width="140px" v-if="!dis_able">
<el-form-item label="Email / Account :" prop="account" v-if="!dis_able">
@@ -196,7 +196,7 @@
</el-dialog>
<!-- 续约弹出框 -->
<el-dialog title="Renewal Young Scientist" :visible.sync="reneVisible" width="600px" :close-on-click-modal="false">
<el-dialog destroy-on-close title="Renewal Young Scientist" :visible.sync="reneVisible" width="600px" :close-on-click-modal="false">
<el-form ref="rene_Form" :model="reneForm" :rules="rules" label-width="140px">
<el-form-item label="Account :">
{{reneForm.account}}
@@ -405,6 +405,7 @@ import bus from '../common/bus'
.post('api/User/getYboardlist', this.query)
.then(res => {
if (res.code == 0) {
console.log(res.data.yboards,'zheli');
this.tableData = res.data.yboards;
for (var i = 0; i < this.tableData.length; i++) {
this.getScoreData(i, this.tableData[i].score)
@@ -478,7 +479,10 @@ import bus from '../common/bus'
// 新增
addHandle() {
this.dis_able = false
this.addForm.account = ''
this.addForm= {
account: '',
}
this.addVisible = true
},
@@ -499,7 +503,7 @@ import bus from '../common/bus'
this.addVisible = false;
this.getDate();
this.$message.success(`Added successfully`);
this.$refs.add_Form.resetFields();
this.dis_able = false
loading.close();
@@ -521,7 +525,7 @@ import bus from '../common/bus'
// 添加关闭
addVisCancle() {
this.addVisible = false
this.$refs.add_Form.resetFields();
// this.$refs.add_Form.resetFields();
},
// 查找与他相同的账号

View File

@@ -70,7 +70,8 @@ module.exports = {
},
proxy: {
'/api': {
// target: 'http://zmzm.tougao.dev.com/',//晓玲本地
// target: 'http://192.168.110.131/tougao/public/index.php/',//后端本地
target: 'https://submission.tmrjournals.com/',//正式
// target: 'http://tougaotest.tmrjournals.com/public/index.php/',//测试环境
// target: 'http://mytest.tmrjournals.com/public/index.php/',//新测试环境