From c862955f695e33d7683d1f5da33504f4bf95f23c Mon Sep 17 00:00:00 2001
From: fs-danaus <danaus314@qq.com>
Date: 星期一, 11 七月 2022 10:04:35 +0800
Subject: [PATCH] 优化websocket右下角弹窗的实现

---
 src/com/yc/sdk/WebSocketMessage/entity/MessageType.java                           |    2 
 src/com/yc/open/init/InitSystemTaks.java                                          |    3 
 src/com/yc/open/init/shcedule/MessageTipsEntity.java                              |   45 +++++++
 src/com/yc/sdk/WebSocketMessage/api/messagelistener/WebSocketMessageListener.java |   20 ++-
 src/com/yc/sdk/WebSocketMessage/action/WebSocketMessageServer.java                |   18 +-
 WebRoot/js/index/WebSocketMessage.js                                              |   87 ++++++++++++++
 WebRoot/home.jsp                                                                  |   20 +-
 src/com/yc/open/init/shcedule/MessagePopTipsSchedule.java                         |  160 ++++++++++++++++++++++++++
 8 files changed, 326 insertions(+), 29 deletions(-)

diff --git a/WebRoot/home.jsp b/WebRoot/home.jsp
index 6c526b5..1cd40ca 100644
--- a/WebRoot/home.jsp
+++ b/WebRoot/home.jsp
@@ -773,19 +773,19 @@
         return false;
     }
     $(function () {
-        maintaince.dbid =<%=dbid%>;
+       /* maintaince.dbid =<%=dbid%>;
         maintaince.isStop = 'false';
-        setInterval(messagehint.popupMessageHint, 120000);//120绉掕皟鐢ㄤ竴娆� (120000)
+        setInterval(messagehint.popupMessageHint, 120000);//120绉掕皟鐢ㄤ竴娆� (120000)*/
 
         //鏄惁鏄剧ず绯荤粺娑堟伅   2012-09-18
-        var flag = checkBoxIsChecked(128, menuConfig);
-        var v = $.cookie(userCode);
-        if (flag) {
-            funB();
-        } else {
-            $.cookie(userCode, 'false');
-            //funB();
-        }
+        // var flag = checkBoxIsChecked(128, menuConfig);
+        // var v = $.cookie(userCode);
+        // if (flag) {
+        //     funB();
+        // } else {
+        //     $.cookie(userCode, 'false');
+        //     //funB();
+        // }
         ///end
         if (1 ==<%= ((request.getAttribute("reurl")!=null || request.getAttribute("wxUrl")!=null
                    ||request.getParameter("wx")!=null || request.getAttribute("wx")!=null ) ? 1: menuFold) %>) {
diff --git a/WebRoot/js/index/WebSocketMessage.js b/WebRoot/js/index/WebSocketMessage.js
index b547def..4d9c3fc 100644
--- a/WebRoot/js/index/WebSocketMessage.js
+++ b/WebRoot/js/index/WebSocketMessage.js
@@ -44,14 +44,95 @@
             var json= JSON.parse(e.data);
             if(json.info.msgType==6014){
                 //閲嶅畾鍚戝埌鐧诲綍椤甸潰
-                location="/login.jsp?m=6015&d="+json.info.dbId;
+                setTimeout(function (){
+                    location="/login.jsp?m=6015&d="+json.info.dbId;
+                },500);
+
             }else if(json.info.msgType==6015){
                 //鍒锋柊褰撳墠椤甸潰
-                location="/login.jsp";
+                setTimeout(function (){
+                    location="/login.jsp";
+                },500);
+
             }else if(json.info.msgType==6002){
                 //鍙充笅瑙掑脊绐�
-
+                //console.log('鎺ユ敹娑堟伅', json);
+                popMessage(json.info.msg);
             }
     	 // console.log('鎺ユ敹娑堟伅', json);
       }
+}
+var popflag=false;
+function popMessage(message){
+    var json=JSON.parse(message);
+    var message6002="";
+    var colt=0;
+    var zong=1;
+    for(var i=0;i<json.length;i++){
+
+        if(json[i]["isPublicUser"]==1){
+            funB6003(json[i]);
+        }else{
+            message6002+=getMessage6002(json[i],colt,zong);
+             colt++;
+             zong++;
+        }
+    }
+    funB6002(message6002);
+}
+function messageToString(obj) {
+    if(obj==null)
+        return "";
+    else
+        return obj+"";
+}
+function getMessage6002(entity,colt,zong) {
+    var message="";
+    var Bcolor="";
+        var messagetxt =entity["messagetxt"].replaceAll("(\\n|\\r|(\\r\\n)|(\u0085)|(\u2028)|(\u2029))","");
+        if (colt % 2 == 0) {
+            Bcolor = "background:#FFFFFF;";
+        } else {
+            Bcolor = "background:#DDDDDD;";
+        }
+        if (entity["formid"] != undefined) {
+            message="<div style=" + Bcolor + "><a id="+entity["messid"]+" style=line-height:15pt;cursor:pointer;text-decoration:underline; onClick=funcLink('"+entity["formid"]+"','"+entity["formtype"]+"','"+messageToString(entity["origfields"]).replace("'", "")+"','"+messageToString(entity["linkfields"]).replace("'", "")+"','"+entity["linkmode"]+"','"+messageToString(entity["self_datafields"])+"','"+messageToString(entity["link_datafields"])+"','"+"','"+messageToString(entity["efilter"]).replace("'", "\\'")+"','"+"','"+"','"+"','"+"','"+"','"+entity["messid"]+",message');>"+zong + ":  "+messagetxt+"</a></div>";
+        } else if (entity["url"]!=undefined&&entity["url"]!="") {
+            var url = "";
+            if (entity["url"].indexOf("http://")<0) {
+                url = "http://" + entity["url"];
+            } else {
+                url = entity["url"];
+            }
+            message="<div style=" + Bcolor + "><a style=line-height:15pt;cursor:pointer;text-decoration:underline;  onClick=window.open('"+url+"')>"+zong + ":  "+messagetxt+"</a></div>";
+        } else {
+            message="<div style=" + Bcolor + "><a id="+entity["messid"]+" style=line-height:15pt;" + Bcolor + "cursor:pointer;>"+zong + ":  "+messagetxt+"</a></div>";
+        }
+    return message;
+}
+function funB6002(message){
+    var init = $.cookie(userCode);
+    if(init==null){
+        $.cookie(userCode,popflag);
+    }
+    if( $.cookie(userCode)=="false"){
+        $.messagerTip.lays(300, 220);
+        $.messagerTip.show(0, message);
+        popflag= $("input[name='isTip']").is(":checked");
+        $.cookie(userCode,popflag,{expires: 1})
+    }
+}
+function funB6003(json) {
+    var messageType = json["messagetype"] ;
+    var myMessages = json["messagetxt"]  ;
+    myMessages = myMessages.replace(/\t/g,"&nbsp;&nbsp;");
+    //鏇挎崲鎵�鏈夌殑鎹㈣绗�
+    myMessages = myMessages.replace(/\r\n/g,"<br>")
+    myMessages = myMessages.replace(/\n/g,"<br>");
+    //鏇挎崲鎵�鏈夌殑绌烘牸锛堜腑鏂囩┖鏍笺�佽嫳鏂囩┖鏍奸兘浼氳鏇挎崲锛�
+    myMessages = myMessages.replace(/\s/g,"&nbsp;");
+    myMessages +="<br/><br/><hr/>" ;
+    myMessages += json["createusername"] + "&nbsp;&nbsp;"
+        + json["createtime"] ;
+    openToast(myMessages,json["topic"],messageType);
 }
\ No newline at end of file
diff --git a/src/com/yc/open/init/InitSystemTaks.java b/src/com/yc/open/init/InitSystemTaks.java
index 1f946b0..888fe12 100644
--- a/src/com/yc/open/init/InitSystemTaks.java
+++ b/src/com/yc/open/init/InitSystemTaks.java
@@ -189,6 +189,9 @@
                     case "OP0044"://鍗ゆ睙鍗椾笂浼犻攢鍞暟鎹�
                         createScheduleTask(dataSourceEntity, task, new KingDeeSchedule(dataSourceEntity,task));
                         break;
+                    case "OP0050"://鍙充笅瑙掑脊绐楁樉绀�
+                        createScheduleTask(dataSourceEntity, task, new MessagePopTipsSchedule(dataSourceEntity));
+                        break;
                     default:
                         break;
                 }
diff --git a/src/com/yc/open/init/shcedule/MessagePopTipsSchedule.java b/src/com/yc/open/init/shcedule/MessagePopTipsSchedule.java
new file mode 100644
index 0000000..2c4ddeb
--- /dev/null
+++ b/src/com/yc/open/init/shcedule/MessagePopTipsSchedule.java
@@ -0,0 +1,160 @@
+package com.yc.open.init.shcedule;
+
+import com.alibaba.fastjson.JSON;
+import com.yc.action.grid.GridUtils;
+import com.yc.entity.DataSourceEntity;
+import com.yc.exception.ApplicationException;
+import com.yc.factory.FactoryBean;
+import com.yc.multiData.SpObserver;
+import com.yc.sdk.WebSocketMessage.action.WebSocketMessageServer;
+import com.yc.sdk.WebSocketMessage.entity.MessageInfo;
+import com.yc.sdk.WebSocketMessage.entity.MessageType;
+import com.yc.service.BaseService;
+import org.springframework.jdbc.core.BeanPropertyRowMapper;
+
+import java.text.SimpleDateFormat;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+/**
+ * 瀹氭椂鏄剧ず鍙充笅瑙掑脊绐�
+ */
+public class MessagePopTipsSchedule extends BaseSchedule implements Runnable {
+
+    public MessagePopTipsSchedule(DataSourceEntity dataSourceEntity) {
+        super(dataSourceEntity);
+    }
+
+    @Override
+    public void run() {
+        try {
+            if (Thread.interrupted()) {
+                throw new InterruptedException();
+            }
+            log.info(dataSourceEntity.getSystemDescribe() + "-寮�濮嬫墽琛屽彸涓嬭寮圭獥");
+            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+            SpObserver.setDBtoInstance("_" + dataSourceEntity.getDbId());
+            BaseService baseService= (BaseService) FactoryBean.getBean("BaseService");
+            final List<MessageTipsEntity> list = baseService.getJdbcTemplate().query("set nocount on ; exec  p9912V4", new BeanPropertyRowMapper<>(MessageTipsEntity.class));
+            if(list!=null&&list.size()>0){
+                list.stream().unordered().distinct().forEach(x->{
+                    //鍙栨瘡涓�涓敤鎴风殑鎵�鏈夋秷鎭�
+                    String userCode=x.getUsercode();
+                    //--鍒嗕簩绉嶆秷鎭被鍨嬶紝1鍙充笅瑙掑脊绐�,2绯荤粺绾ф秷鎭樉绀�
+
+                    final List<MessageTipsEntity> collect = list.stream().filter(y -> y.getUsercode().equalsIgnoreCase(x.getUsercode())).collect(Collectors.toList());
+
+                    if(collect!=null&&collect.size()>0){
+                        /*int colt=0;
+                        int zong=1;
+                        String Bcolor="";
+                        StringBuffer message = new StringBuffer();
+                        for( MessageTipsEntity entity:collect) {
+
+                            if(entity.getIsPublicUser()!=null||entity.getIsPublicUser()==1){
+                                //---绯荤粺绾ф秷鎭洿鎺ユ湁涓�鏉″氨鍙戦�佷竴鏉�
+                                pushSystemMessage(entity,sdf);
+                                continue;
+                            }
+                            //---鍙充笅瑙掓秷鎭紝缁勮鍐嶅彂閫�
+                            String messagetxt = this.replaceBlank(entity.getMessagetxt());
+                            if (colt % 2 == 0) {
+                                Bcolor = "background:#FFFFFF;";
+                            } else {
+                                Bcolor = "background:#DDDDDD;";
+                            }
+                            if (entity.getFormid() != null) {
+                                message.append("<div style=" + Bcolor + "><a id=").append(entity.getMessid()).append(" style=line-height:15pt;cursor:pointer;text-decoration:underline; onClick=funcLink('").append(entity.getFormid())
+                                        .append("','").append(entity.getFormtype()).append("','").append(toString(entity.getOrigfields()).replace("'", "")).append("','").append(toString(entity.getLinkfields()).replace("'", "")).append("','").append(entity.getLinkmode()).append("','").append(entity.getSelf_datafields())
+                                        .append("','").append(entity.getLink_datafields()).append("','")
+                                        .append("','").append(toString(entity.getEfilter()).replace("'", "\\'"))
+                                        .append("','")
+                                        .append("','")
+                                        .append("','")
+                                        .append("','")
+                                        .append("','")
+                                        .append("','").append(entity.getMessid()).append(",message');>").append(zong + ":  ").append(messagetxt).append("</a></div>");
+                            } else if (StringUtils.isNotBlank(entity.getUrl())) {
+                                String url = "";
+                                if (entity.getUrl().contains("http://") == false) {
+                                    url = "http://" + entity.getUrl();
+                                } else {
+                                    url = entity.getUrl();
+                                }
+                                message.append("<div style=" + Bcolor + "><a style=line-height:15pt;cursor:pointer;text-decoration:underline;  onClick=window.open('")
+                                        .append(url).append("')>")
+                                        .append(zong + ":  ")
+                                        .append(messagetxt).append("</a></div>");
+                            } else {
+                                message.append("<div style=" + Bcolor + "><a id=").append(entity.getMessid())
+                                        .append(" style=line-height:15pt;" + Bcolor + "cursor:pointer;>")
+                                        .append(zong + ":  ")
+                                        .append(messagetxt).append("</a></div>");
+                            }
+                            colt++;
+                            zong++;
+
+
+                        }*/
+                        //----鍙戦�佸嚭鍘�
+                        //---閫氱煡webscoket
+                        MessageInfo messageInfo = new MessageInfo();
+                        messageInfo.setDbId(dataSourceEntity.getDbId());
+                        messageInfo.setMsgType(MessageType.NOTICE_AND_TODO);
+                        messageInfo.setUserFromType("1");//TODO PC绔�
+                        messageInfo.setUserCode(userCode);
+                        messageInfo.setMsg(GridUtils.toJson(collect));
+                        WebSocketMessageServer.publishMessageToRedis(messageInfo);
+                        };
+                });
+            }
+            log.info(dataSourceEntity.getSystemDescribe() + "-鍙充笅瑙掑脊绐椾换鍔″畬鎴�");
+        } catch (InterruptedException ex) {
+            log.info(dataSourceEntity.getSystemID() + "鍙充笅瑙掑脊绐椾换鍔″凡琚粓姝�");
+        }  catch (Exception ex) {
+            ex.printStackTrace();
+            log.error(dataSourceEntity.getSystemDescribe() + ":" + ex.getMessage());
+        }finally {
+        SpObserver.setDBtoInstance();
+    }
+    }
+
+    private void pushSystemMessage(MessageTipsEntity entity,SimpleDateFormat sdf) {
+        Map map=new HashMap();
+        map.put("messagetxt",entity.getMessagetxt());
+        map.put("unvaliddate",sdf.format(toString(entity.getUnvaliddate())));
+        map.put("createtime",sdf.format(toString(entity.getCreatetime())));
+        map.put("createusername",entity.getCreateusername());
+        map.put("topic",entity.getTopic());
+        map.put("messagetype",entity.getMessagetype());
+        //---閫氱煡webscoket
+        MessageInfo messageInfo = new MessageInfo();
+        messageInfo.setDbId(dataSourceEntity.getDbId());
+        messageInfo.setMsgType(MessageType.POPUP_REMINDER);
+        messageInfo.setUserFromType("1");//TODO PC绔�
+        messageInfo.setUserCode(entity.getUsercode());
+        messageInfo.setMsg(JSON.toJSONString(map));
+        WebSocketMessageServer.publishMessageToRedis(messageInfo);
+    }
+
+    public String replaceBlank(String str) {
+        if (str == null || str == "") { return ""; }
+        Matcher m = null;
+        try {
+            Pattern p = Pattern.compile("\t|\r|\n");
+            m = p.matcher(str);
+        } catch (Exception e) {
+            e.printStackTrace();
+            throw new ApplicationException(str + "-瑙f瀽鍑洪敊锛屽瓨鍦ㄦ湁鐗规畩瀛楃");
+        }
+        return m.replaceAll(" ").replaceAll("\\$", "\\\\\\$");
+    }
+    public static String toString(Object obj){
+        if(obj==null)return "";
+        return obj.toString();
+    }
+}
\ No newline at end of file
diff --git a/src/com/yc/open/init/shcedule/MessageTipsEntity.java b/src/com/yc/open/init/shcedule/MessageTipsEntity.java
new file mode 100644
index 0000000..4023bf4
--- /dev/null
+++ b/src/com/yc/open/init/shcedule/MessageTipsEntity.java
@@ -0,0 +1,45 @@
+package com.yc.open.init.shcedule;
+
+import lombok.Data;
+
+@Data
+public class MessageTipsEntity {
+    Integer messid	;
+    String messagetxt	;
+    String unvaliddate	;
+    String createuser;
+    String createtime	;
+    Integer rejustsrvflag;
+    String Readers	;
+    String UsrReaded;
+    Integer tipcount;
+    Integer formid;
+    Integer formtype;
+    String origfields;
+    String linkfields;
+    Integer linkmode;
+    String self_datafields;
+    String link_datafields;
+    String efilter;
+    String usercode ;
+    String url;
+    String createusername;
+    String topic;
+    String messagetype;
+    Integer isPublicUser;
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) return true;
+        if (o == null || getClass() != o.getClass()) return false;
+
+        MessageTipsEntity that = (MessageTipsEntity) o;
+
+        return usercode.equals(that.usercode);
+    }
+
+    @Override
+    public int hashCode() {
+        return usercode.hashCode();
+    }
+}
diff --git a/src/com/yc/sdk/WebSocketMessage/action/WebSocketMessageServer.java b/src/com/yc/sdk/WebSocketMessage/action/WebSocketMessageServer.java
index a45fd85..d1e9f8d 100644
--- a/src/com/yc/sdk/WebSocketMessage/action/WebSocketMessageServer.java
+++ b/src/com/yc/sdk/WebSocketMessage/action/WebSocketMessageServer.java
@@ -160,19 +160,21 @@
         }
         return wsMessageUserList;
     }
-
     /**
-     * 鍏蜂綋涓�涓細璇濈敤鎴�
+     * 鏍规嵁 dbid,userCocde鍙栧嚭瀵瑰簲鐨勭敤鎴�(鍖呮嫭鎵�鏈夌鐨勭敤鎴凤紝PC绔�,APP绔�)
      * @param dbId
-     * @param userFromType
      * @param userCode
-     * @param sessionId
      * @return
      */
-    public static WsMessageUserEntity getOnlineUser(Integer dbId, String userFromType,String userCode,String sessionId) {
-        return onlineUserList.get(RedisSocket.CHANEL_WS_MESSAGES + ":" + dbId + ":" + userFromType + ":" + userCode+":"+sessionId);
+    public static List<WsMessageUserEntity> getOnlineUserByTips(Integer dbId, String userCode) {
+        List<WsMessageUserEntity> wsMessageUserList = new ArrayList<WsMessageUserEntity>();
+        for(Map.Entry<String, WsMessageUserEntity> entry:onlineUserList.entrySet()){
+            if (entry.getKey().startsWith(RedisSocket.CHANEL_WS_MESSAGES + ":" + dbId)&&entry.getKey().contains(":"+userCode+":")) {
+                wsMessageUserList.add(entry.getValue()) ;
+            }
+        }
+        return wsMessageUserList;
     }
-
     /**
      * 鍙栧悓涓�涓郴缁熺殑鎵�鏈夌敤鎴�
      * @param dbId
@@ -185,9 +187,7 @@
             if (entry.getKey().startsWith(RedisSocket.CHANEL_WS_MESSAGES + ":" + dbId + ":" + (StringUtils.isNotBlank(userFromType)?(userFromType + ":"):""))) {
             	wsMessageUserList.add(entry.getValue()) ;
             }
-    		//System.out.println(entry.getKey()+"--->"+entry.getValue());  
         }
-       // return onlineUserList.get(RedisSocket.CHANEL_WS_MESSAGES + ":" + dbId + ":" + userFromType + ":" + userCode);
     	return wsMessageUserList;
     }
 
diff --git a/src/com/yc/sdk/WebSocketMessage/api/messagelistener/WebSocketMessageListener.java b/src/com/yc/sdk/WebSocketMessage/api/messagelistener/WebSocketMessageListener.java
index f4a6104..b53be82 100644
--- a/src/com/yc/sdk/WebSocketMessage/api/messagelistener/WebSocketMessageListener.java
+++ b/src/com/yc/sdk/WebSocketMessage/api/messagelistener/WebSocketMessageListener.java
@@ -65,11 +65,21 @@
                         handlerMessage(msg, wsMessageUserEntity);
                     }
                 }
-            } else if (msg.getMsgType().equals(MessageType.REFRESH_TASK) ||
-                    msg.getMsgType().equals(MessageType.REFRESH_LOCALVERSION_TASK)) {
+            } else if (MessageType.REFRESH_TASK.equals(msg.getMsgType()) ||
+                    MessageType.REFRESH_LOCALVERSION_TASK.equals(msg.getMsgType())||
+                    MessageType.CHECK_SYSTEM_DISABLED.equals(msg.getMsgType())
+            ) {
                 //瀵逛簬娌$敤websocket鎺ユ敹鐨勬儏鍐碉紝鐩存帴澶勭悊鐩稿叧娑堟伅
                 handlerMessage(msg, null);
 
+            }else if(MessageType.POPUP_REMINDER.equals(msg.getMsgType())||MessageType.NOTICE_AND_TODO.equals(msg.getMsgType())){
+                //--澶勭悊鍙充笅瑙掑脊绐楀強绯荤粺绾х殑娑堟伅
+                List<WsMessageUserEntity> wsMessageUserEntityList = WebSocketMessageServer.getOnlineUserByTips(msg.getDbId(), msg.getUserCode());
+                if (wsMessageUserEntityList != null && wsMessageUserEntityList.size() != 0) {
+                    for (WsMessageUserEntity wsMessageUserEntity : wsMessageUserEntityList) {
+                        handlerMessage(msg, wsMessageUserEntity);
+                    }
+                }
             } else {
                 List<WsMessageUserEntity> wsMessageUserEntityList = WebSocketMessageServer.getOnlineUser(msg.getDbId(), msg.getUserFromType(), msg.getUserCode());
                 //鍙湁鏄瓨鍦ㄤ簬褰撳墠鐨勭敤鎴蜂俊鎭墠闇�瑕佸鐞嗭紝鍚﹀垯涓嶉渶瑕佸鐞�
@@ -96,11 +106,9 @@
                 case 6001:  //APP鎵爜鐧诲綍
                     // messageIfc=imMessageIfc;
                     break;
-                case 6002:  //寰呭姙浜嬪疁锛圥C绔彸涓嬭锛孉PP绔疄鏃跺脊鍑烘彁閱掞級
-                    //messageIfc=imMessageIfc;
-                    break;
+                case 6002:  //寰呭姙浜嬪疁锛圥C绔彸涓嬭锛�
                 case 6003:  //绯荤粺绾у脊绐椾俊鎭紙瑕侀伩鍏嶉珮瀵嗗害閲嶅寮瑰嚭锛�
-                    //messageIfc=imMessageIfc;
+                    messageIfc=imMessageIfc;
                     break;
                 case 6004:  //鏀跺彇鏈嶅姟璐圭画璐归�氱煡
                     //messageIfc=imMessageIfc;
diff --git a/src/com/yc/sdk/WebSocketMessage/entity/MessageType.java b/src/com/yc/sdk/WebSocketMessage/entity/MessageType.java
index ffdc620..a99ffcf 100644
--- a/src/com/yc/sdk/WebSocketMessage/entity/MessageType.java
+++ b/src/com/yc/sdk/WebSocketMessage/entity/MessageType.java
@@ -3,7 +3,7 @@
 public class   MessageType {
     public final static Integer APP_QRCODE_LOGIN=6001;   //APP鎵爜鐧诲綍
     public final static Integer NOTICE_AND_TODO=6002;   //寰呭姙浜嬪疁锛圥C绔彸涓嬭锛孉PP绔疄鏃跺脊鍑烘彁閱掞級
-    public final static Integer POPUPREMINDER=6003;   //绯荤粺绾у脊绐椾俊鎭紙瑕侀伩鍏嶉珮瀵嗗害閲嶅寮瑰嚭锛�
+    public final static Integer POPUP_REMINDER=6003;   //绯荤粺绾у脊绐椾俊鎭紙瑕侀伩鍏嶉珮瀵嗗害閲嶅寮瑰嚭锛�
     public final static Integer SERVICE_CHARGE =6004;   //鏀跺彇鏈嶅姟璐圭画璐归�氱煡
     public final static Integer CHECK_SYSTEM_DISABLED=6005;   //妫�鏌ョ郴缁熸槸鍚﹀仠鐢紝浠f浛maintaince.do
     public final static Integer MINI_APP_VERIFYING=6006;   //灏忕▼搴忔壂鐮佹牳閿�锛堟壂鐮佸悗绛夊緟鐐瑰嚮鏍搁攢鎸夐挳锛�

--
Gitblit v1.8.0