Browse Source

解决关联数据集的细节问题

tags/v1.22.8.2^2
zhoupzh 3 years ago
parent
commit
489e1735e1
7 changed files with 88 additions and 36 deletions
  1. +5
    -0
      options/locale/locale_en-US.ini
  2. +6
    -0
      options/locale/locale_zh-CN.ini
  3. +9
    -9
      templates/repo/datasets/index.tmpl
  4. +1
    -1
      templates/repo/datasets/reference.tmpl
  5. +39
    -22
      web_src/js/components/dataset/referenceDataset.vue
  6. +27
    -3
      web_src/js/features/i18nVue.js
  7. +1
    -1
      web_src/js/index.js

+ 5
- 0
options/locale/locale_en-US.ini View File

@@ -951,6 +951,11 @@ unzip_failed=Unzip Failed
unzip_stared=Unzipping unzip_stared=Unzipping
unzip_status=Unzip Status unzip_status=Unzip Status
collection_num=Collection Nums collection_num=Collection Nums
current_dataset=Current Dataset
linked_dataset=Linked Dataset
unfavorite=Unfavorite
favorite=Favorite
disassociate=Disassociate
[repo] [repo]
owner = Owner owner = Owner
repo_name = Repository Name repo_name = Repository Name


+ 6
- 0
options/locale/locale_zh-CN.ini View File

@@ -957,6 +957,12 @@ unzip_failed=解压失败
unzip_stared=解压中 unzip_stared=解压中
unzip_status=解压状态 unzip_status=解压状态
collection_num=收藏数量 collection_num=收藏数量
current_dataset=当前数据集
linked_dataset=关联数据集
unfavorite=取消收藏
favorite=收藏
disassociate=取消关联

[repo] [repo]
owner=拥有者 owner=拥有者
repo_name=项目名称 repo_name=项目名称


+ 9
- 9
templates/repo/datasets/index.tmpl View File

@@ -157,8 +157,8 @@
<div class="ui mobile reversed stackable grid"> <div class="ui mobile reversed stackable grid">
<div class="row"> <div class="row">
<div class="ui blue small menu compact selectcloudbrain"> <div class="ui blue small menu compact selectcloudbrain">
<a class="active item" href="{{.RepoLink}}/datasets">当前数据集</a>
<a class="item" href="{{.RepoLink}}/datasets/reference_datasets">关联数据集</a>
<a class="active item" href="{{.RepoLink}}/datasets">{{$.i18n.Tr "dataset.current_dataset"}}</a>
<a class="item" href="{{.RepoLink}}/datasets/reference_datasets">{{$.i18n.Tr "dataset.linked_dataset"}}</a>
</div> </div>
</div> </div>
<div class="row" style="align-items: center;"> <div class="row" style="align-items: center;">
@@ -169,20 +169,20 @@
{{if $.IsSigned}} {{if $.IsSigned}}
<button v-if="star_active" class="ui mini basic button" style="display: flex;align-items: center;padding: 0.5rem;border: #888888;border-top-right-radius: 0;border-bottom-right-radius: 0;margin-right: -1px;" @click="postStar({{.dataset.ID}},'{{.Link}}')"> <button v-if="star_active" class="ui mini basic button" style="display: flex;align-items: center;padding: 0.5rem;border: #888888;border-top-right-radius: 0;border-bottom-right-radius: 0;margin-right: -1px;" @click="postStar({{.dataset.ID}},'{{.Link}}')">
<i class="ri-heart-fill" style="color: #FA8C16;"></i> <i class="ri-heart-fill" style="color: #FA8C16;"></i>
<span style="margin-left: 0.3rem;font-size: 0.7rem;">取消收藏</span>
<span style="margin-left: 0.3rem;font-size: 0.7rem;">{{$.i18n.Tr "dataset.unfavorite"}}</span>
</button> </button>
<button v-else class="ui mini basic button" style="display: flex;align-items: center;padding:0.5rem;border: #888888;border-top-right-radius: 0;border-bottom-right-radius: 0;margin-right: -1px;" @click="postStar({{.dataset.ID}},'{{.Link}}')"> <button v-else class="ui mini basic button" style="display: flex;align-items: center;padding:0.5rem;border: #888888;border-top-right-radius: 0;border-bottom-right-radius: 0;margin-right: -1px;" @click="postStar({{.dataset.ID}},'{{.Link}}')">
<i class="ri-heart-line" ></i> <i class="ri-heart-line" ></i>
<span style="margin-left: 0.3rem;font-size: 0.7rem;">收藏</span>
<span style="margin-left: 0.3rem;font-size: 0.7rem;">{{$.i18n.Tr "dataset.favorite"}}</span>
</button> </button>
{{else}} {{else}}
<button v-if="star_active" class="ui mini basic button" style="display: flex;align-items: center;padding: 0.5rem;border: #888888;border-top-right-radius: 0;border-bottom-right-radius: 0;margin-right: -1px;"> <button v-if="star_active" class="ui mini basic button" style="display: flex;align-items: center;padding: 0.5rem;border: #888888;border-top-right-radius: 0;border-bottom-right-radius: 0;margin-right: -1px;">
<i class="ri-heart-fill" ></i> <i class="ri-heart-fill" ></i>
<span style="margin-left: 0.3rem;font-size: 0.7rem;">取消收藏</span>
<span style="margin-left: 0.3rem;font-size: 0.7rem;">{{$.i18n.Tr "dataset.unfavorite"}}</span>
</button> </button>
<button v-else class="ui mini basic button" style="display: flex;align-items: center;padding:0.5rem;border: #888888;border-top-right-radius: 0;border-bottom-right-radius: 0;margin-right: -1px;"> <button v-else class="ui mini basic button" style="display: flex;align-items: center;padding:0.5rem;border: #888888;border-top-right-radius: 0;border-bottom-right-radius: 0;margin-right: -1px;">
<i class="ri-heart-line" style="color: #FA8C16;"></i> <i class="ri-heart-line" style="color: #FA8C16;"></i>
<span style="margin-left: 0.3rem;font-size: 0.7rem;">收藏</span>
<span style="margin-left: 0.3rem;font-size: 0.7rem;">{{$.i18n.Tr "dataset.favorite"}}</span>
</button> </button>
{{end}} {{end}}
</div> </div>
@@ -402,11 +402,11 @@
<div class="ui stackable grid"> <div class="ui stackable grid">
<div class="row" style="justify-content: space-between"> <div class="row" style="justify-content: space-between">
<div class="ui blue small menu compact selectcloudbrain"> <div class="ui blue small menu compact selectcloudbrain">
<a class="active item" href="{{.RepoLink}}/datasets">当前数据集</a>
<a class="item" href="{{.RepoLink}}/datasets/reference_datasets">关联数据集</a>
<a class="active item" href="{{.RepoLink}}/datasets">{{$.i18n.Tr "dataset.current_dataset"}}</a>
<a class="item" href="{{.RepoLink}}/datasets/reference_datasets">{{$.i18n.Tr "dataset.linked_dataset"}}</a>
</div> </div>
{{if $.CanWrite}} {{if $.CanWrite}}
<a class="ui green button" href="{{.RepoLink}}/datasets/create">创建数据集</a>
<a class="ui green button" href="{{.RepoLink}}/datasets/create">{{$.i18n.Tr "dataset.new_dataset"}}</a>
{{end}} {{end}}
</div> </div>
</div> </div>


+ 1
- 1
templates/repo/datasets/reference.tmpl View File

@@ -2,7 +2,7 @@


<div class="repository"> <div class="repository">
{{template "repo/header" .}} {{template "repo/header" .}}
<div class="reference-dataset" data-repolink="{{.RepoLink}}" data-canwrite="{{.CanWrite}}" data-is-sign="{{$.IsSigned}}" data-max-reference-num="{{.MaxReferenceDatasetNum}}"></div>
<div class="reference-dataset" data-repolink="{{.RepoLink}}" data-canwrite="{{.CanWrite}}" data-is-sign="{{$.IsSigned}}" data-max-reference-num="{{.MaxReferenceDatasetNum}}" data-address="{{IsShowDataSetOfCurrentRepo $.Repository.ID}}"></div>
<div id="reference-dataset"></div> <div id="reference-dataset"></div>
</div> </div>
{{template "base/footer" .}} {{template "base/footer" .}}

+ 39
- 22
web_src/js/components/dataset/referenceDataset.vue View File

@@ -133,7 +133,7 @@
justify-content: center; justify-content: center;
margin: 0 1rem; margin: 0 1rem;
" "
title="引用次数"
:title="i18n.citations"
> >
<i class="ri-link"></i> <i class="ri-link"></i>
<span <span
@@ -147,7 +147,7 @@
</span> </span>
<span <span
style="display: flex; align-items: center; flex: 1" style="display: flex; align-items: center; flex: 1"
title="下载次数"
:title="i18n.downloads"
> >
<i class="ri-download-line"></i> <i class="ri-download-line"></i>
<span <span
@@ -198,16 +198,16 @@
</div> </div>
<div class="ui placeholder segment bgtask-none"> <div class="ui placeholder segment bgtask-none">
<div class="ui icon header bgtask-header-pic"></div> <div class="ui icon header bgtask-header-pic"></div>
<div class="bgtask-content-header">还未关联过数据集</div>
<div class="bgtask-content-header">{{ i18n.not_link_dataset }}</div>
<div class="bgtask-content"> <div class="bgtask-content">
<div class="bgtask-content-txt"> <div class="bgtask-content-txt">
您可以通过单击新建关联数据集按钮,将平台上公开数据集展示在这里。
{{ i18n.no_link_dataset_tips1 }}
</div> </div>
<div class="bgtask-content-txt"> <div class="bgtask-content-txt">
使用说明可以参考启智AI协作平台<a
href="https://git.openi.org.cn/zeizei/OpenI_Learning"
>小白训练营课程</a
>
{{ i18n.dataset_instructions_for_use
}}<a href="https://git.openi.org.cn/zeizei/OpenI_Learning">{{
i18n.dataset_camp_course
}}</a>
</div> </div>
</div> </div>
</div> </div>
@@ -262,9 +262,17 @@
class="select-data-title" class="select-data-title"
style="display: flex; align-items: end" style="display: flex; align-items: end"
><span class="ref-data-title"> ><span class="ref-data-title">
{{ item.Title }}
</span></el-checkbox
>
<span
style="overflow: hidden; text-overflow: ellipsis"
>
{{ item.Title }}
</span>
<img
v-if="item.Recommend"
src="/img/jian.svg"
style="margin-left: 0.5rem"
/> </span
></el-checkbox>
<a <a
class="select-data-title select-data-href" class="select-data-title select-data-href"
:href="`/${item.Repo.OwnerName}/${item.Repo.Name}/datasets`" :href="`/${item.Repo.OwnerName}/${item.Repo.Name}/datasets`"
@@ -387,6 +395,7 @@ export default {
canWrite: true, canWrite: true,
isSigned: false, isSigned: false,
maxReferenceNum: 20, maxReferenceNum: 20,
isCurrentUrl: true,
}; };
}, },
methods: { methods: {
@@ -403,7 +412,7 @@ export default {
this.selectDatasetArray = []; this.selectDatasetArray = [];
}, },
gotoDataset(item) { gotoDataset(item) {
location.href = `/${item.Repo.OwnerName}/${item.Repo.Name}/datasets`;
window.open(`/${item.Repo.OwnerName}/${item.Repo.Name}/datasets`);
}, },
currentChange(page) { currentChange(page) {
this.paramsPublics.page = page; this.paramsPublics.page = page;
@@ -423,7 +432,7 @@ export default {
.delete(url) .delete(url)
.then((res) => { .then((res) => {
if (res.data.Code === 0) { if (res.data.Code === 0) {
this.$message.success(`取消${name}关联数据集成功!`);
this.$message.success(this.i18n.cancel_link_dataset.format(name));
let index = this.datasetList.findIndex((item) => { let index = this.datasetList.findIndex((item) => {
return item.ID === id; return item.ID === id;
}); });
@@ -436,7 +445,7 @@ export default {
} }
}) })
.catch((err) => { .catch((err) => {
this.$message.error(`取消关联数据集失败!`);
this.$message.error(this.i18n.dataset_link_failed);
console.log(err); console.log(err);
}); });
}, },
@@ -447,11 +456,15 @@ export default {
changeCheckbox(checked, item) { changeCheckbox(checked, item) {
if (this.checkList.length > this.maxReferenceNum) { if (this.checkList.length > this.maxReferenceNum) {
this.checkList.pop(); this.checkList.pop();
this.$message.error("关联超过20个数据集");
this.$message.error(
this.i18n.dataset_over_nums.format(this.maxReferenceNum)
);
return; return;
} }
if (this.checkList.length === this.maxReferenceNum && !checked) { if (this.checkList.length === this.maxReferenceNum && !checked) {
this.$message.error("关联超过20个数据集");
this.$message.error(
this.i18n.dataset_over_nums.format(this.maxReferenceNum)
);
return; return;
} }
if (checked) { if (checked) {
@@ -534,7 +547,9 @@ export default {
}, },
submitReferDataset() { submitReferDataset() {
if (this.checkList.length > this.maxReferenceNum) { if (this.checkList.length > this.maxReferenceNum) {
this.$message.error("关联超过20个数据集");
this.$message.error(
this.i18n.dataset_over_nums.format(this.maxReferenceNum)
);
return; return;
} }
let url = `${this.repoLink}/datasets/reference_datasets`; let url = `${this.repoLink}/datasets/reference_datasets`;
@@ -549,14 +564,14 @@ export default {
.post(url, data) .post(url, data)
.then((res) => { .then((res) => {
if (res.data.Code === 0) { if (res.data.Code === 0) {
this.$message.success(`关联数据集成功!`);
this.$message.success(this.i18n.dataset_link_success);
this.getSelectDatasetList(); this.getSelectDatasetList();
} else { } else {
this.$message.error(res.data.Message); this.$message.error(res.data.Message);
} }
}) })
.catch((err) => { .catch((err) => {
this.$message.error(`关联数据集失败!`);
this.$message.error(this.i18n.dataset_link_failed);
console.log(err); console.log(err);
}); });
}, },
@@ -584,7 +599,7 @@ export default {
} }
}, },
showFlag(val) { showFlag(val) {
if (!val) {
if (!val || this.isCurrentUrl) {
document document
.getElementById("header-dataset") .getElementById("header-dataset")
.setAttribute("href", this.repoLink + "/datasets"); .setAttribute("href", this.repoLink + "/datasets");
@@ -603,6 +618,7 @@ export default {
this.canWrite = $(".reference-dataset").data("canwrite"); this.canWrite = $(".reference-dataset").data("canwrite");
this.isSigned = $(".reference-dataset").data("is-sign"); this.isSigned = $(".reference-dataset").data("is-sign");
this.maxReferenceNum = $(".reference-dataset").data("max-reference-num"); this.maxReferenceNum = $(".reference-dataset").data("max-reference-num");
this.isCurrentUrl = $(".reference-dataset").data("address");
if (document.documentElement.attributes["lang"].nodeValue == "en-US") { if (document.documentElement.attributes["lang"].nodeValue == "en-US") {
this.i18n = this.$locale.US; this.i18n = this.$locale.US;
} else { } else {
@@ -679,8 +695,9 @@ export default {
font-size: 18px; font-size: 18px;
color: #454545; color: #454545;
font-weight: 700; font-weight: 700;
overflow: hidden;
text-overflow: ellipsis;
display: flex;
align-items: baseline;
max-width: 100%;
} }
.select-data-href { .select-data-href {
text-align: right; text-align: right;


web_src/js/features/datsetCate.js → web_src/js/features/i18nVue.js View File

@@ -43,9 +43,20 @@ export const i18nVue = {
favorite: "收藏", favorite: "收藏",
disassociate: "取消关联", disassociate: "取消关联",
public_dataset: "公开数据集", public_dataset: "公开数据集",
selected_data_file: "已选数据文件",
selected_data_file: "已选数据",
sure: "确定", sure: "确定",
search_dataset: "搜数据集名称/描述...", search_dataset: "搜数据集名称/描述...",
citations: "引用次数",
downloads: "下载次数",
not_link_dataset: "还未关联过数据集",
no_link_dataset_tips1:
"您可以通过单击新建关联数据集按钮,将平台上公开数据集展示在这里。",
dataset_instructions_for_use: "使用说明:可以参考启智AI协作平台",
dataset_camp_course: "小白训练营课程",
dataset_link_success: "关联数据集成功!",
dataset_link_failed: "关联数据集失败!",
dataset_over_nums: "关联超过?个数据集",
cancel_link_dataset: "取消?关联数据集成功!",
}, },
US: { US: {
computer_vision: "computer vision", computer_vision: "computer vision",
@@ -92,8 +103,21 @@ export const i18nVue = {
favorite: "Favorite", favorite: "Favorite",
disassociate: "Disassociate", disassociate: "Disassociate",
public_dataset: "Public Dataset", public_dataset: "Public Dataset",
selected_data_file: "Selected Data File",
sure: "Sure",
selected_data_file: "Selected DataSets",
sure: "Ok",
search_dataset: "Search dataset name/description ...", search_dataset: "Search dataset name/description ...",
citations: "Citations",
downloads: "Downloads",
not_link_dataset: "No datasets have been associated yet",
no_link_dataset_tips1:
"You can display public datasets on the platform here by clicking the New Linked Dataset button.",

dataset_instructions_for_use:
"Instructions for use: You can refer to Qizhi AI Collaboration Platform ",
dataset_camp_course: "Newcomer Training Camp Course",
dataset_link_success: "Linked dataset succeeded!",
dataset_link_failed: "Linked dataset Failed!",
dataset_over_nums: "Linked over ? datasets!",
cancel_link_dataset: "Cancel ? Linked dataset succeeded!",
}, },
}; };

+ 1
- 1
web_src/js/index.js View File

@@ -51,7 +51,7 @@ import referenceDataset from "./components/dataset/referenceDataset.vue";
import router from "./router/index.js"; import router from "./router/index.js";
import { Message } from "element-ui"; import { Message } from "element-ui";


import { i18nVue } from "./features/datsetCate.js";
import { i18nVue } from "./features/i18nVue.js";


Vue.use(ElementUI); Vue.use(ElementUI);
Vue.prototype.$axios = axios; Vue.prototype.$axios = axios;


Loading…
Cancel
Save