diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/action/StartUseAction.java b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/action/StartUseAction.java
index 5e53930d92..eb24545328 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/action/StartUseAction.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/action/StartUseAction.java
@@ -6,6 +6,12 @@ import com.fr.design.utils.BrowseUtils;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
+
+/**
+ * alphaFine - 模板资源 - 二级界面 - 开始使用按钮的绑定事件
+ *
+ * 点击后跳转至帆软市场下载对应模板资源
+ * */
public class StartUseAction implements ActionListener {
TemplateResourceDetail resourceDetail;
@@ -17,6 +23,10 @@ public class StartUseAction implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
String url = FineMarketClientHelper.getInstance().getTemplateDownLoadUrl(resourceDetail.getRoot());
+ if (url == null) {
+ // 如果获取失败,跳转到所有模板页面
+ url = FineMarketClientHelper.getInstance().getFineMarketTemplateUrl();
+ }
BrowseUtils.browser(url);
}
}
\ No newline at end of file
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/model/TemplateResourceDetail.java b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/model/TemplateResourceDetail.java
index 710ef6480d..468e3f9d48 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/model/TemplateResourceDetail.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/model/TemplateResourceDetail.java
@@ -170,7 +170,7 @@ public class TemplateResourceDetail {
}
// 3请求标签信息
- detail.setTagsName(helper.getTemplateTagsByTemplateCids(detail.getTagsId()));
+ detail.setTagsName(helper.getTemplateTagsByTemplateTagIds(detail.getTagsId()));
} catch (Exception e) {
FineLoggerFactory.getLogger().error(e, e.getMessage());
}
@@ -178,6 +178,17 @@ public class TemplateResourceDetail {
return detail;
}
+ /**
+ * 这里做下数据转换
+ * 原始数据是html标签写的,如下
+ * "
该模板需用10.0及以上版本设计器预览
该模板为库存场景解决方案的部分内容,全部内容可下载库存场景解决方案查看
为保障模板预览效果,建议安装新自适应插件(FR11.0版本插件已内置,无需手动安装),有使用需求或疑问,请联系帆软技术支持咨询
",
+ *
+ * 转换的后的数据 是原始数据中所有标签内的(包括标签)的字符串(List),如上字符串会转为如下
+ * List [该模板需用10.0及以上版本设计器预览
,
+ * 该模板为库存场景解决方案的部分内容,全部内容可下载库存场景解决方案查看
,
+ * 为保障模板预览效果,建议安装新自适应插件(FR11.0版本插件已内置,无需手动安装),有使用需求或疑问,请联系帆软技术支持咨询
+ * ]
+ * */
static final Pattern htmlPattern = Pattern.compile("(.+?)
");
static List parseDetailInfo(String htmlDetailInfo) {
List infos = new ArrayList<>();
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/preview/TemplateResourceDetailPane.java b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/preview/TemplateResourceDetailPane.java
index 84cb607d86..5be5ba4a5c 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/preview/TemplateResourceDetailPane.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/preview/TemplateResourceDetailPane.java
@@ -47,8 +47,10 @@ public class TemplateResourceDetailPane extends JPanel {
private static final String TAGS = Toolkit.i18nText("Fine-Design_Report_AlphaFine_Template_Detail_Tags");
private static final String PARENT_PACKAGE = Toolkit.i18nText("Fine-Design_Report_AlphaFine_Template_Detail_Parent_Package");
private static final String DETAIL_INFO = Toolkit.i18nText("Fine-Design_Report_AlphaFine_Template_Detail_Info");
+ private static final String FREE = Toolkit.i18nText("Fine-Design_Report_AlphaFine_Template_Detail_Price_Free");
private static final String SPACE = " ";
private static final String LF = "
";
+ private static final String RMB = "¥";
public TemplateResourceDetailPane(TemplateResourceDetail detail) {
@@ -90,9 +92,9 @@ public class TemplateResourceDetailPane extends JPanel {
emptyLabel.setPreferredSize(new Dimension(115, 25));
JLabel priceLabel = new JLabel();
if (data.getPrice() == 0) {
- priceLabel.setText("免费");
+ priceLabel.setText(FREE);
} else {
- priceLabel.setText("$ " + data.getPrice());
+ priceLabel.setText(RMB + SPACE + data.getPrice());
}
operatePane.add(createLinkLabel());
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/helper/FineMarketClientHelper.java b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/helper/FineMarketClientHelper.java
index e1ae18d70a..023be0d2e4 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/helper/FineMarketClientHelper.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/helper/FineMarketClientHelper.java
@@ -37,12 +37,23 @@ public class FineMarketClientHelper {
private Map tags;
+ /**
+ * 获取模板的下载链接
+ * */
public String getTemplateDownLoadUrl(TemplateResource templateResource) {
String url = FINE_MARKET_TEMPLATE_INFO + FILE_DOWNLOAD;
if (templateResource != null) {
- url += templateResource.getId();
+ return url + templateResource.getId();
+ } else {
+ return null;
}
- return url;
+ }
+
+ /**
+ * 获取帆软市场模板资源页面链接
+ * */
+ public String getFineMarketTemplateUrl() {
+ return FINE_MARKET_TEMPLATE_URL;
}
public JSONObject getTemplateInfoById(String id) throws IOException {
@@ -87,14 +98,18 @@ public class FineMarketClientHelper {
}
- public List getTemplateTagsByTemplateCids(String[] cids) throws IOException {
+
+ /**
+ * 根据模板资源的tagid,获取tagName
+ * */
+ public List getTemplateTagsByTemplateTagIds(String[] TagIds) throws IOException {
List list = new ArrayList<>();
initTags();
- if (cids != null) {
- for (String cid : cids) {
- String tagName = tags.get(cid);
+ if (TagIds != null) {
+ for (String tagId : TagIds) {
+ String tagName = tags.get(tagId);
if (tagName != null) {
list.add(tagName);
}
@@ -104,6 +119,9 @@ public class FineMarketClientHelper {
return list;
}
+ /**
+ * 请求帆软市场,获取所有tag信息,并构建tagid - tagname的map
+ * */
private void initTags() throws IOException {
tags = new HashMap<>();
String url = FINE_MARKET_TEMPLATE_INFO + TEMPLATES_TAGS;