国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

開發文檔

張巨偉 / 1374人閱讀

摘要:代碼如下獲得同一區域下的列獲得每個存儲數量計算每個區域的數量地區域機房樓層區域地區域機房樓層區域合并標識如果為就不會顯示得到每個對象的不重復的數量將轉換為數組

后臺各模塊功能實現 一、網絡設備

功能說明

  主要是添加交換機和路由器并生成相應的端口,用于與服務器或其他網絡設備相連

類名和表名

  Board——zq_ho_board(交換機),Cabnetport——zq_ho_cabnetport(端口關聯),Ports——zq_ho_port(端口)      

主頁面路徑

 /exchange/board/list

功能難點

1.端口的生成   

     var arrList = new Array();
        function producePort(){
            var prefix=$("input[name="prefix"]").val()//前綴
            var sult= $("select[name="sult"]").val();//端口類型
            var start= $("input[name="start"]").val();//端口起始
            var ends= $("input[name="ends"]").val();//端口結束
            var speed= $("input[name="speed"]").val();//端口速率
            var career= $("input[name="career"]").val();//限制速率
           if(prefix=="" || sult =="" || start=="" || speed=="" ||career=="" || ends ==""){
             top.layer.alert("請填入參數!", {icon: 0, title:"警告"});
             return false;
            }
           var allcamres=prefix+"-"+sult+"-"+start+"-"+ends+"-"+speed+"-"+career;
           arrList.push(allcamres);//將參數放進數組
           var html ="";
           for(var i=0;i<=(ends-start);i++){
                  html+=""+prefix+(Number(start)+i)+"${fns:getDictLabel( "1", "line_type", "")}";
               if(sult==0){
                  html+=" ${fns:getDictLabel("0", "port_type", "")}"; 
                 }
               if(sult==1){
                  html+=" ${fns:getDictLabel("1", "port_type", "")}"; 
                 }
                  html+=""+speed+" "+career+" ";
             }
           $("#prottabal tbody").append(html);
     將給訂的端口參數  arrList 取出并在保存交換機時保存端口信息。

2.交換機的統計
    sql語句部分
    SELECT      a.id as id,
             a.bo_arae as arae,
             substring_index(a.bo_machineroom,"/",1 ) as machineroom,
             substring_index(a.bo_machineroom,"/",2  )as storey,
             a.bo_machineroom as cabinetid,                                
             b.machnum as goodnum, 
             c.lounum as louchen,
             d.machnum as jifang,
             e.arenum as arenum,
             t.name AS modelnumber,                  
             f.modenum as num
  FROM zq_ho_board a 
  LEFT JOIN  zq_mhub_module_type t  on t.id=a.bo_modelnumber
  
  LEFT JOIN (SELECT b.bo_arae, b.bo_machineroom,COUNT(1) as machnum FROM zq_ho_board b  where  b.bo_camtype=#{camtype} GROUP BY b.bo_arae, b.bo_machineroom ) as b on  (b.bo_arae =a.bo_arae and  b.bo_machineroom =a.bo_machineroom) 
  
  LEFT JOIN (SELECT b.bo_arae, substring_index(b.bo_machineroom,"/",2 ) as louchen,COUNT(1) as lounum FROM zq_ho_board b  where  b.bo_camtype=#{camtype} GROUP BY b.bo_arae,louchen ) as c on (c.bo_arae =a.bo_arae  and  c.louchen =substring_index(a.bo_machineroom,"/",2 ))
  LEFT JOIN (SELECT b.bo_arae, substring_index(b.bo_machineroom,"/",1 ) as machineroom,COUNT(1) as machnum FROM zq_ho_board b where  b.bo_camtype=#{camtype}   GROUP BY b.bo_arae, machineroom ) as d on  (d.bo_arae =a.bo_arae  and  d.machineroom = substring_index(a.bo_machineroom,"/",1 )  )
  LEFT JOIN (SELECT b.bo_arae,COUNT(1) as arenum FROM zq_ho_board b  where  b.bo_camtype=#{camtype}   GROUP BY b.bo_arae ) as e on  e.bo_arae =a.bo_arae
  LEFT JOIN (SELECT b.bo_arae, b.bo_machineroom,b.bo_modelnumber,COUNT(1) as modenum FROM zq_ho_board b  where  b.bo_camtype=#{camtype} GROUP BY b.bo_arae,  b.bo_machineroom , b.bo_modelnumber ) as f on   ( f.bo_arae =a.bo_arae and  f.bo_modelnumber =a.bo_modelnumber and  f.bo_machineroom =a.bo_machineroom)
      a.del_flag = #{DEL_FLAG_NORMAL} AND a.bo_camtype= #{camtype}
         
                AND a.bo_arae LIKE 
                    "%"||#{arae}||"%"
                    "%"+#{arae}+"%"
                    concat("%",#{arae},"%")
         
         
                AND a.bo_machineroom LIKE 
                    "%"||#{machineroom}||"%"
                    "%"+#{machineroom}+"%"
                    concat("%",#{machineroom},"%")
         
      
  
        
     
  GROUP BY  a.bo_arae, a.bo_machineroom ,substring_index(a.bo_machineroom,"/",2 ),substring_index(a.bo_machineroom,"/",1 ),a.bo_modelnumber
    

統計的合并單元格的設計思路

  計算出同一個區域下得數量,再分別計算出與該條記錄相同的  機房,樓層,區域的各個數量以確定合并單元格的數量,并用數組中的唯一位置將數據存入。  
  代碼如下
  
  public List findgoods(Board board) {
    // board.setPage(page);
    // page.setList(dao.findgoods(board));
    List lists = dao.findgoods(board);
    int i = 0;
    List tenpt = null;
    Board h = null;
    for (Board s : lists) {
        List list = new ArrayList<>();
        for (Board t : lists) {
            // 獲得同一區域下的列
            if (t.getArae().equals(s.getArae())) {
                list.add(t);// 獲得每個list
            }
        }

        List arry = new ArrayList<>();// 存儲數量
        // 計算每個區域的數量
        Integer arae = 0, rooms = 0, torey = 0, distr = 0, tMode = 0;
        for (Board r : list) {
            if (r.getArae().equals(s.getArae())) { // 地區域
                arae++;
            }
            if (r.getArae().equals(s.getArae())
                    && r.getMachineroom().equals(s.getMachineroom())) {// 機房
                rooms++;
            }
            if (r.getArae().equals(s.getArae())
                    && r.getMachineroom().equals(s.getMachineroom())
                    && r.getStorey().equals(s.getStorey())) {// 樓層
                torey++;
            }
            if (r.getArae().equals(s.getArae())
                    && r.getMachineroom().equals(s.getMachineroom())
                    && r.getStorey().equals(s.getStorey())
                    && r.getCabinetid().equals(s.getCabinetid())) {// 區域
                distr++;
            }

        }
        if (h == null) {
            arry.add(0, arae);// 地區域
            arry.add(1, rooms);// 機房
            arry.add(2, torey); // 樓層
            arry.add(3, distr); // 區域

        } else {
            if (s.getArae().equals(h.getArae())) {
                // 合并標識如果為0就不會顯示
                arry.add(0, 0);
            } else {
                arry.add(0, arae);
            }
            if (s.getArae().equals(h.getArae())
                    && s.getMachineroom().equals(h.getMachineroom())) {
                arry.add(1, 0);
            } else {
                arry.add(1, rooms);
            }
            if (s.getArae().equals(h.getArae())
                    && s.getMachineroom().equals(h.getMachineroom())
                    && s.getStorey().equals(h.getStorey())) {
                arry.add(2, 0);
            } else {
                arry.add(2, torey);
            }
            if (s.getArae().equals(h.getArae())
                    && s.getMachineroom().equals(h.getMachineroom())
                    && s.getStorey().equals(h.getStorey())
                    && s.getCabinetid().equals(h.getCabinetid())) {
                arry.add(3, 0);
            } else {
                arry.add(3, distr);
            }

        }
        // 得到每個對象的不重復的數量
        s.setPrames(arry.toArray());// 將list轉換為數組
        h = s;
    }
    return lists;

}
           
               
                                           
                       
                 
            
                     
             
               

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/70266.html

相關文章

  • Wizard 開源文檔管理系統1.0發布啦

    摘要:總結如果你在為公司尋找一款開源免費的開發文檔文檔管理工具,不妨考慮一下項目,一定不會讓你失望的。 Wizard 是一款開源文檔管理系統,項目地址為 https://github.com/mylxsw/wizard。這個項目是 我 在2017年就開始開發的,起初只是想做一款能夠在公司內部把Swagger文檔管理起來的工具,但在這近兩年的時間里,一直斷斷續續的為其添加各種功能,現在終于下決...

    cod7ce 評論0 收藏0
  • 【效率專精系列】善用API統一描述語言提升RestAPI開發效率

    摘要:其標準為前身是,提供強大的在線編輯功能,包括語法高亮錯誤提示自動完成實時預覽,并且支持用戶以格式撰寫導入導出轉換文檔。 團隊內部RestAPI開發采用設計驅動開發的模式,即使用API設計文檔解耦前端和后端的開發過程,雙方只在聯調與測試時耦合。在實際開發和與前端合作的過程中,受限于眾多因素的影響,開發效率還有進一步提高的空間。本文的目的是優化工具鏈支持,減少一部分重復和枯燥的勞動。 現狀...

    tianyu 評論0 收藏0
  • 敏捷開發中的文檔:要不要寫?怎么寫?

    摘要:但這并不意味著敏捷開發完全拋棄文檔,敏捷開發遵循輕文檔,重溝通的原則。把功能點拆分,導入到項目管理軟件中,相關人員只需要按照需求目錄一條條執行即可,不再需要一頁一頁的看了。如今的任務看板和燃盡圖已經由實物形式轉變為項目管理軟件。 我們比較熟知的軟件項目管理方法是瀑布。其基本流程是需求-> 設計->開發->測試。基本假設只要把每一個環節都做正確,那么最終得到的結果也是正確的。瀑布開發有非...

    zzir 評論0 收藏0
  • 前端學習資源匯總

    摘要:建立該倉庫的目的主要是整理收集學習資源,統一管理,方便隨時查找。目前整合的學習資源只是前端方向的,可能會存在漏缺比較好的資源,需要慢慢的完善它,歡迎在該上補充資源或者提供寶貴的建議。 說明 平時的學習資源都比較的凌亂,看到好的資源都是直接收藏在瀏覽器的收藏夾中,這樣其實并不方便,整理在云筆記上,也不方便查看修改記錄,索性就整理在 github 上并開源出來,希望幫助大家能夠更快的找到需...

    SnaiLiu 評論0 收藏0
  • 開發人員常用框架文檔整理及中文翻譯

    摘要:開發人員常用的框架文檔及中文翻譯,包含系列文檔,日志,,,,數據庫,,等最新官方文檔以及對應的中文翻譯。其它如果你有針對此網站好的建議或意見,也歡迎提更多的文檔和更多的文檔版本支持 開發人員常用的框架文檔及中文翻譯,包含 Spring 系列文檔(Spring, Spring Boot, Spring Cloud, Spring Security, Spring Session),日志(...

    BingqiChen 評論0 收藏0

發表評論

0條評論

張巨偉

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<