From bdcb64f0293f27e2dfb3de12a60f6e8412cb962b Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期四, 26 五月 2022 01:45:22 +0800
Subject: [PATCH] 退费修改为 从证书地址中获取

---
 java110-core/src/main/java/com/java110/core/language/Cn.java |  319 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 314 insertions(+), 5 deletions(-)

diff --git a/java110-core/src/main/java/com/java110/core/language/Cn.java b/java110-core/src/main/java/com/java110/core/language/Cn.java
index 5241e3a..790e948 100644
--- a/java110-core/src/main/java/com/java110/core/language/Cn.java
+++ b/java110-core/src/main/java/com/java110/core/language/Cn.java
@@ -1,7 +1,11 @@
 package com.java110.core.language;
 
-import com.java110.dto.menu.MenuDto;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.java110.dto.menuCatalog.MenuCatalogDto;
+import com.java110.utils.util.StringUtil;
 import com.java110.vo.ResultVo;
+import org.springframework.stereotype.Component;
 
 import java.util.HashMap;
 import java.util.List;
@@ -9,17 +13,322 @@
 
 /**
  * 绻佷綋
- *
  */
-
+@Component
 public class Cn extends DefaultLanguage {
+    private static Map<String, String> menuCatalogs = new HashMap<>();
+    private static Map<String, String> menus = new HashMap<>();
+    private static Map<String, String> msgs = new HashMap<>();
 
 
-    static {
-        menuCatalogs.put("璁惧","瑷倷");
+    public List<MenuCatalogDto> getMenuCatalog(List<MenuCatalogDto> menuCatalogDtos) {
+        String menuCatalogsName = "";
+        for (MenuCatalogDto menuCatalogDto : menuCatalogDtos) {
+            menuCatalogsName = menuCatalogs.get(menuCatalogDto.getName());
+            if (!StringUtil.isEmpty(menuCatalogsName)) {
+                menuCatalogDto.setName(menuCatalogsName);
+            }
+        }
+        return menuCatalogDtos;
     }
 
 
+    @Override
+    public List<Map> getMenuDto(List<Map> menuDtos) {
+        String menuName = "";
+        for (Map menuDto : menuDtos) {
+            menuName = menus.get(menuDto.get("menuGroupName"));
+            if (!StringUtil.isEmpty(menuName)) {
+                menuDto.put("menuGroupName", menuName);
+            }
+
+            menuName = menus.get(menuDto.get("menuName"));
+            if (!StringUtil.isEmpty(menuName)) {
+                menuDto.put("menuName", menuName);
+            }
+
+        }
+        return menuDtos;
+    }
+
+    @Override
+    public JSONArray getPrivilegeMenuDto(JSONArray tmpPrivilegeArrays) {
+        String menuName = "";
+        JSONObject priObj = null;
+        for (int priIndex = 0; priIndex < tmpPrivilegeArrays.size(); priIndex++) {
+            priObj = tmpPrivilegeArrays.getJSONObject(priIndex);
+            menuName = menus.get(priObj.get("gName"));
+            if (!StringUtil.isEmpty(menuName)) {
+                priObj.put("gName", menuName);
+            }
+
+            menuName = menus.get(priObj.get("mName"));
+            if (!StringUtil.isEmpty(menuName)) {
+                priObj.put("mName", menuName);
+            }
+
+            menuName = menus.get(priObj.get("pName"));
+            if (!StringUtil.isEmpty(menuName)) {
+                priObj.put("pName", menuName);
+            }
+
+        }
+        return tmpPrivilegeArrays;
+    }
+
+    @Override
+    public ResultVo getResultVo(ResultVo resultVo) {
+        String msg = msgs.get(resultVo.getMsg());
+        if (!StringUtil.isEmpty(msg)) {
+            resultVo.setMsg(msg);
+        }
+
+        return resultVo;
+    }
+
+    public String getLangMsg(String msg) {
+        String msgStr = msgs.get(msg);
+        if (!StringUtil.isEmpty(msgStr)) {
+            return msgStr;
+        }
+
+        return msg;
+    }
+
+    static {
+        menuCatalogs.put("璁惧", "瑷倷");
+        menuCatalogs.put("棣栭〉", "棣栭爜");
+        menuCatalogs.put("涓氬姟鍙楃悊", "妤嫏鍙楃悊");
+        menuCatalogs.put("璐圭敤鎶ヨ〃", "璨荤敤鍫辫〃");
+        menuCatalogs.put("鐗╀笟鏈嶅姟", "鐗╂キ鏈嶅嫏");
+        menuCatalogs.put("璁惧鍋滆溅", "瑷倷鍋滆粖");
+        menuCatalogs.put("甯哥敤鑿滃崟", "甯哥敤鑿滃柈");
+        menuCatalogs.put("璁剧疆", "瑷疆");
+
+        menus.put("灏忓尯绠$悊", "灏忓崁绠$悊");
+        menus.put("鎴戠殑灏忓尯", "鎴戠殑灏忓崁");
+        menus.put("灏忓尯澶у睆", "灏忓崁澶у睆");
+        menus.put("涓氬姟鍙楃悊", "妤嫏鍙楃悊");
+        menus.put("鎴垮眿瑁呬慨", "鎴垮眿瑁濅慨");
+        menus.put("缁撴瀯鍥�", "绲愭鍦�");
+        menus.put("杞︿綅缁撴瀯鍥�", "杌婁綅绲愭鍦�");
+        menus.put("浜ф潈鐧昏", "鐢㈡瑠鐧昏");
+        menus.put("瑙嗛鐩戞帶", "瑕栭牷鐩f帶");
+        menus.put("璧勪骇绠$悊", "璩囩敘绠$悊");
+        menus.put("妤兼爧淇℃伅", "妯撴淇℃伅");
+        menus.put("鍗曞厓淇℃伅", "鍠厓淇℃伅");
+        menus.put("鎴垮眿绠$悊", "鎴垮眿绠$悊");
+        menus.put("鍟嗛摵绠$悊", "鍟嗚垨绠$悊");
+        menus.put("涓氫富绠$悊", "妤富绠$悊");
+        menus.put("涓氫富淇℃伅", "妤富淇℃伅");
+        menus.put("涓氫富鎴愬憳", "妤富鎴愬摗");
+        menus.put("缁戝畾涓氫富", "缍佸畾妤富");
+        menus.put("涓氫富璐﹀彿", "妤富璩櫉");
+        menus.put("璐圭敤绠$悊", "璨荤敤绠$悊");
+        menus.put("璐圭敤椤硅缃�", "璨荤敤闋呰ō缃�");
+        menus.put("鎴垮眿鏀惰垂", "鎴垮眿鏀惰不");
+        menus.put("杞﹁締鏀惰垂", "杌婅紱鏀惰不");
+        menus.put("鍚堝悓鏀惰垂", "鍚堝悓鏀惰不");
+        menus.put("璐﹀崟鍌即", "璩柈鍌钩");
+        menus.put("璐圭敤瀵煎叆", "璨荤敤灏庡叆");
+        menus.put("鍛樺伐鏀惰垂", "鍝″伐鏀惰不");
+        menus.put("璐圭敤姹囨�昏〃", "璨荤敤鍖附琛�");
+        menus.put("閫�璐瑰鏍�", "閫�璨诲鏍�");
+        menus.put("娆犺垂淇℃伅", "娆犺不淇℃伅");
+        menus.put("鎶勮〃绫诲瀷", "鎶勮〃椤炲瀷");
+        menus.put("姘寸數鎶勮〃", "姘撮浕鎶勮〃");
+        menus.put("琛ユ墦鏀舵嵁", "瑁滄墦鏀舵摎");
+        menus.put("鍏憡鍏紡", "鍏敜鍏紡");
+        menus.put("缂磋垂瀹℃牳", "绻宠不瀵╂牳");
+        menus.put("鎶樻墸璁剧疆", "鎶樻墸瑷疆");
+        menus.put("浼樻儬鐢宠", "鍎儬鐢宠珛");
+        menus.put("浼樻儬绫诲瀷", "鍎儬椤炲瀷");
+        menus.put("涓存椂杞︽敹璐�", "鑷ㄦ檪杌婃敹璨�");
+        menus.put("涓存椂杞︾即璐规竻鍗�", "鑷ㄦ檪杌婄钩璨绘竻鍠�");
+        menus.put("鍙栨秷璐圭敤", "鍙栨秷璨荤敤");
+        menus.put("鏅烘収鍋滆溅", "鏅烘収鍋滆粖");
+        menus.put("鍋滆溅鍦虹鐞�", "鍋滆粖鍫寸鐞�");
+        menus.put("杞︿綅淇℃伅", "杌婁綅淇℃伅");
+        menus.put("宀椾涵绠$悊", "宕椾涵绠$悊");
+        menus.put("涓氫富杞﹁締", "妤富杌婅紱");
+        menus.put("杩涘満璁板綍", "閫插牬瑷橀寗");
+        menus.put("鍦ㄥ満杞﹁締", "鍦ㄥ牬杌婅紱");
+        menus.put("榛戠櫧鍚嶅崟", "榛戠櫧鍚嶅柈");
+        menus.put("鍓╀綑杞︿綅", "鍓╅杌婁綅");
+        menus.put("杞︿綅鐢宠", "杌婁綅鐢宠珛");
+        menus.put("鎶ヤ慨绠$悊", "鍫变慨绠$悊");
+        menus.put("鎶ヤ慨璁剧疆", "鍫变慨瑷疆");
+        menus.put("鐢佃瘽鎶ヤ慨", "闆昏┍鍫变慨");
+        menus.put("宸ュ崟姹�", "宸ュ柈姹�");
+        menus.put("鎶ヤ慨寰呭姙", "鍫变慨寰呰睛");
+        menus.put("鎶ヤ慨宸插姙", "鍫变慨宸茶睛");
+        menus.put("鎶ヤ慨鍥炶", "鍫变慨鍥炶í");
+        menus.put("寮哄埗鍥炲崟", "寮峰埗鍥炲柈");
+        menus.put("鐤儏绠℃帶", "鐤儏绠℃帶");
+        menus.put("鐤儏璁剧疆", "鐤儏瑷疆");
+        menus.put("杩旂渷涓婃姤", "杩旂渷涓婂牨");
+        menus.put("鐤儏涓婃姤", "鐤儏涓婂牨");
+        menus.put("鍚堝悓绠$悊", "鍚堝悓绠$悊");
+        menus.put("鍚堝悓绫诲瀷", "鍚堝悓椤炲瀷");
+        menus.put("鍚堝悓鐢叉柟", "鍚堝悓鐢叉柟");
+        menus.put("璧疯崏鍚堝悓", "璧疯崏鍚堝悓");
+        menus.put("鍚堝悓鏌ヨ", "鍚堝悓鏌ヨ");
+        menus.put("鍚堝悓鍙樻洿", "鍚堝悓璁婃洿");
+        menus.put("鍒版湡鍚堝悓", "鍒版湡鍚堝悓");
+        menus.put("鎶ヨ〃绠$悊", "鍫辫〃绠$悊");
+        menus.put("鎶ヨ〃涓撳", "鍫辫〃灏堝");
+        menus.put("妤兼爧璐圭敤琛�", "妯撴璨荤敤琛�");
+        menus.put("璐圭敤鍒嗛」琛�", "璨荤敤鍒嗛爡琛�");
+        menus.put("璐圭敤鏄庣粏琛�", "璨荤敤鏄庣窗琛�");
+        menus.put("缂磋垂娓呭崟", "绻宠不娓呭柈");
+        menus.put("娆犺垂鏄庣粏琛�", "娆犺不鏄庣窗琛�");
+        menus.put("棰勭即璐规彁閱�", "闋愮钩璨绘彁閱�");
+        menus.put("璐圭敤鍒版湡鎻愰啋", "璨荤敤鍒版湡鎻愰啋");
+        menus.put("缂磋垂鏄庣粏琛�", "绻宠不鏄庣窗琛�");
+        menus.put("鎶ヤ慨姹囨�昏〃", "鍫变慨鍖附琛�");
+        menus.put("鏈敹璐规埧灞�", "鏈敹璨绘埧灞�");
+        menus.put("闂嵎鏄庣粏琛�", "鍟忓嵎鏄庣窗琛�");
+        menus.put("涓氫富缂磋垂鏄庣粏", "妤富绻宠不鏄庣窗");
+        menus.put("鍗庡畞鐗╀笟鎶ヨ〃", "鑿鐗╂キ鍫辫〃");
+        menus.put("鎶奸噾鎶ヨ〃", "鎶奸噾鍫辫〃");
+        menus.put("鎶ヤ慨鎶ヨ〃", "鍫变慨鍫辫〃");
+        menus.put("钀ヤ笟鎶ヨ〃", "鐕熸キ鍫辫〃");
+        menus.put("鍗忓悓鍔炲叕", "鍗斿悓杈﹀叕");
+        menus.put("娴佺▼瀹炰緥", "娴佺▼瀵︿緥");
+        menus.put("鎴戠殑娴佺▼", "鎴戠殑娴佺▼");
+        menus.put("宸ヤ綔鍔炵悊", "宸ヤ綔杈︾悊");
+        menus.put("鍙戝竷鍏憡", "鐧间綀鍏憡");
+        menus.put("鐢佃瘽鎶曡瘔", "闆昏┍鎶曡ù");
+        menus.put("璁垮鐧昏", "瑷鐧昏");
+        menus.put("淇℃伅鍙戝竷", "淇℃伅鐧煎竷");
+        menus.put("淇℃伅澶х被", "淇℃伅澶ч");
+        menus.put("鏅烘収鑰冨嫟", "鏅烘収鑰冨嫟");
+        menus.put("浠婃棩鑰冨嫟", "浠婃棩鑰冨嫟");
+        menus.put("鏈堣�冨嫟", "鏈堣�冨嫟");
+        menus.put("鑰冨嫟璁板綍", "鑰冨嫟瑷橀寗");
+        menus.put("闂嵎鎶曠エ", "鍟忓嵎鎶曠エ");
+        menus.put("鎴戠殑闂嵎", "鎴戠殑鍟忓嵎");
+        menus.put("娲诲姩瑙勫垯", "娲诲嫊瑕忓墖");
+        menus.put("閲囪喘绠$悊", "鎺¤臣绠$悊");
+        menus.put("浠撳簱淇℃伅", "鍊夊韩淇℃伅");
+        menus.put("鐗╁搧淇℃伅", "鐗╁搧淇℃伅");
+        menus.put("鐗╁搧绫诲瀷", "鐗╁搧椤炲瀷");
+        menus.put("鐗╁搧渚涘簲鍟�", "鐗╁搧渚涙噳鍟�");
+        menus.put("鐗╁搧瑙勬牸", "鐗╁搧瑕忔牸");
+        menus.put("閲囪喘鐢宠", "鎺¤臣鐢宠珛");
+        menus.put("璋冩嫧璁板綍", "瑾挎挜瑷橀寗");
+        menus.put("鍑哄叆搴撴槑缁�", "鍑哄叆搴槑绱�");
+        menus.put("璋冩嫧鏄庣粏", "瑾挎挜鏄庣窗");
+        menus.put("鐗╁搧棰嗙敤", "鐗╁搧闋樼敤");
+        menus.put("鎴戠殑鐗╁搧", "鎴戠殑鐗╁搧");
+        menus.put("杞禒璁板綍", "杞夎磮瑷橀寗");
+        menus.put("鐗╁搧浣跨敤璁板綍", "鐗╁搧浣跨敤瑷橀寗");
+        menus.put("宸℃绠$悊", "宸℃绠$悊");
+        menus.put("宸℃椤圭洰", "宸℃闋呯洰");
+        menus.put("宸℃鐐�", "宸℃榛�");
+        menus.put("宸℃璺嚎", "宸℃璺窔");
+        menus.put("宸℃璁″垝", "宸℃瑷堝妰");
+        menus.put("宸℃浠诲姟", "宸℃浠诲嫏");
+        menus.put("宸℃鏄庣粏", "宸℃鏄庣窗");
+        menus.put("璁惧绠$悊", "瑷倷绠$悊");
+        menus.put("璁惧淇℃伅", "瑷倷淇℃伅");
+        menus.put("璁惧绫诲瀷", "瑷倷椤炲瀷");
+        menus.put("璁惧鏁版嵁鍚屾", "瑷倷鏁告摎鍚屾");
+        menus.put("寮�闂ㄨ褰�", "闁嬮杸瑷橀寗");
+        menus.put("璁垮鐣欏奖", "瑷鐣欏奖");
+        menus.put("鐢宠閽ュ寵", "鐢宠珛閼板寵");
+        menus.put("閽ュ寵瀹℃牳", "閼板寵瀵╂牳");
+        menus.put("鍛樺伐闂ㄧ鎺堟潈", "鍝″伐闁�绂佹巿娆�");
+        menus.put("缁勭粐绠$悊", "绲勭箶绠$悊");
+        menus.put("缁勭粐淇℃伅", "绲勭箶淇℃伅");
+        menus.put("鍛樺伐淇℃伅", "鍝″伐淇℃伅");
+        menus.put("鍛樺伐璁よ瘉", "鍝″伐瑾嶈瓑");
+        menus.put("绯荤粺绠$悊", "绯荤当绠$悊");
+        menus.put("鏉冮檺缁�", "娆婇檺绲�");
+        menus.put("鍛樺伐鏉冮檺", "鍝″伐娆婇檺");
+        menus.put("灏忓尯閰嶇疆", "灏忓崁閰嶇疆");
+        menus.put("娴佺▼绠$悊", "娴佺▼绠$悊");
+        menus.put("淇敼瀵嗙爜", "淇敼瀵嗙⒓");
+        menus.put("鍟嗘埛淇℃伅", "鍟嗘埗淇℃伅");
+        menus.put("鍏紬鍙�", "鍏溇铏�");
+        menus.put("灏忕▼搴忛厤缃�", "灏忕▼搴忛厤缃�");
+        menus.put("鐭俊閰嶇疆", "鐭俊閰嶇疆");
+        menus.put("浣嶇疆淇℃伅", "浣嶇疆淇℃伅");
+        menus.put("璧勪骇瀵煎叆瀵煎嚭", "璩囩敘灏庡叆灏庡嚭");
+        menus.put("鍘嗗彶缂磋垂瀵煎叆", "姝峰彶绻宠不灏庡叆");
+        menus.put("鎵撳嵃閰嶇疆", "鎵撳嵃閰嶇疆");
+        menus.put("鏀舵嵁妯℃澘", "鏀舵摎妯℃澘");
+        menus.put("鍩虹鏁版嵁", "鍩虹鏁告摎");
+        menus.put("灏忓尯淇℃伅", "灏忓崁淇℃伅");
+        menus.put("鐗╀笟鍏徃", "鐗╂キ鍏徃");
+        menus.put("鍛ㄨ竟鍟嗗", "鍛ㄩ倞鍟嗗");
+        menus.put("鍏ラ┗瀹℃牳", "鍏ラ瀵╂牳");
+        menus.put("绉熻祦绠$悊", "绉熻硟绠$悊");
+        menus.put("绉熻祦閰嶇疆", "绉熻硟閰嶇疆");
+        menus.put("鎴挎簮淇℃伅", "鎴挎簮淇℃伅");
+        menus.put("鍑虹瀹℃牳", "鍑虹瀵╂牳");
+        menus.put("绉熻祦棰勭害", "绉熻硟闋愮磩");
+        menus.put("鍑虹鍘嗗彶", "鍑虹姝峰彶");
+        menus.put("鏅烘収杩愯惀", "鏅烘収閬嬬嚐");
+        menus.put("鏃ц揣鐢╁崠", "鑸婅波鐢╄常");
+        menus.put("鍙戝竷闇�姹�", "鐧煎竷闇�姹�");
+        menus.put("鍒朵綔浼樻儬鍒�", "瑁戒綔鍎儬鍒�");
+        menus.put("璐拱璁板綍", "璩艰卜瑷橀寗");
+        menus.put("鍟嗗搴楅摵", "鍟嗗搴楅嫪");
+        menus.put("鍟嗗煄鑿滃崟", "鍟嗗煄鑿滃柈");
+        menus.put("寮�搴楀鏍�", "闁嬪簵瀵╂牳");
+        menus.put("搴楅摵淇℃伅", "搴楅嫪淇℃伅");
+        menus.put("灏忓尯搴楅摵", "灏忓崁搴楅嫪");
+        menus.put("涓撳尯鐩綍", "灏堝崁鐩寗");
+        menus.put("涓撳尯鍟嗗搧", "灏堝崁鍟嗗搧");
+        menus.put("搴楅摵绫诲瀷", "搴楅嫪椤炲瀷");
+        menus.put("涓婃灦鏈嶅姟", "涓婃灦鏈嶅嫏");
+        menus.put("涓婃灦鍟嗗搧", "涓婃灦鍟嗗搧");
+        menus.put("搴楅摵鍙樻洿", "搴楅嫪璁婃洿");
+        menus.put("璐㈠姟绠$悊", "璨″嫏绠$悊");
+        menus.put("鎻愮幇瀹℃牳", "鎻愮従瀵╂牳");
+        menus.put("鎻愮幇浠樻", "鎻愮従浠樻");
+        menus.put("鎻愮幇璁板綍", "鎻愮従瑷橀寗");
+        menus.put("璁剧疆淇濊瘉閲�", "瑷疆淇濊瓑閲�");
+        menus.put("淇濊瘉閲戞槑缁�", "淇濊瓑閲戞槑绱�");
+        menus.put("鍟嗘埛绠$悊", "鍟嗘埗绠$悊");
+        menus.put("鍟嗘埛绠$悊鍛�", "鍟嗘埗绠$悊鍝�");
+        menus.put("钀ラ攢涓績", "鐕熼姺涓績");
+        menus.put("鍙戝竷骞垮憡", "鐧煎竷寤e憡");
+        menus.put("渚挎皯鑿滃崟缁存姢", "渚挎皯鑿滃柈缍");
+        menus.put("璁㈠崟涓績", "瑷傚柈涓績");
+        menus.put("鍙楃悊鍗�", "鍙楃悊鍠�");
+        menus.put("鐧诲綍鏃ュ織", "鐧婚寗鏃ヨ獙");
+        menus.put("鍟嗗煄璁㈠崟", "鍟嗗煄瑷傚柈");
+        menus.put("閫�璐ц鍗�", "閫�璨ㄨ▊鍠�");
+        menus.put("鏈嶅姟绠$悊", "鏈嶅嫏绠$悊");
+        menus.put("搴旂敤淇℃伅", "鎳夌敤淇℃伅");
+        menus.put("鏈嶅姟淇℃伅", "鏈嶅嫏淇℃伅");
+        menus.put("鏈嶅姟娉ㄥ唽", "鏈嶅嫏瑷诲唺");
+        menus.put("鏈嶅姟瀹炵幇", "鏈嶅嫏瀵︾従");
+        menus.put("鏈嶅姟鎻愪緵", "鏈嶅嫏鎻愪緵");
+        menus.put("涓氬姟杞ㄨ抗", "妤嫏杌岃贰");
+        menus.put("鑿滃崟绠$悊", "鑿滃柈绠$悊");
+        menus.put("鑿滃崟鐩綍", "鑿滃柈鐩寗");
+        menus.put("鑿滃崟缁�", "鑿滃柈绲�");
+        menus.put("鑿滃崟缁存姢", "鑿滃柈缍");
+        menus.put("鏄犲皠绠$悊", "鏄犲皠绠$悊");
+        menus.put("缂栫爜鏄犲皠", "绶ㄧ⒓鏄犲皠");
+        menus.put("灞炴�х鐞�", "灞�х鐞�");
+        menus.put("灞炴��", "灞��");
+        menus.put("鎶ヨ〃寮�鍙�", "鍫辫〃闁嬬櫦");
+        menus.put("鎶ヨ〃缁�", "鍫辫〃绲�");
+        menus.put("鎶ヨ〃淇℃伅", "鍫辫〃淇℃伅");
+        menus.put("鎶ヨ〃缁勪欢", "鍫辫〃绲勪欢");
+        menus.put("缂撳瓨绠$悊", "绶╁瓨绠$悊");
+        menus.put("鍒锋柊缂撳瓨", "鍒锋柊绶╁瓨");
+        menus.put("瀹氭椂浠诲姟绠$悊", "瀹氭檪浠诲嫏绠$悊");
+        menus.put("瀹氭椂浠诲姟", "瀹氭檪浠诲嫏");
+        menus.put("鏃ュ織涓績", "鏃ヨ獙涓績");
+        menus.put("浜や簰鏃ュ織", "浜や簰鏃ヨ獙");
+        menus.put("鍒濆鍖栧皬鍖�", "鍒濆鍖栧皬鍗�");
+
+    }
 
 
 }

--
Gitblit v1.8.0