成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

開發(fā)文檔

張巨偉 / 1377人閱讀

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

后臺各模塊功能實現(xiàn) 一、網(wǎng)絡設(shè)備

功能說明

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

類名和表名

  Board——zq_ho_board(交換機),Cabnetport——zq_ho_cabnetport(端口關(guān)聯(lián)),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();//端口結(jié)束
            var speed= $("input[name="speed"]").val();//端口速率
            var career= $("input[name="career"]").val();//限制速率
           if(prefix=="" || sult =="" || start=="" || speed=="" ||career=="" || ends ==""){
             top.layer.alert("請?zhí)钊雲(yún)?shù)!", {icon: 0, title:"警告"});
             return false;
            }
           var allcamres=prefix+"-"+sult+"-"+start+"-"+ends+"-"+speed+"-"+career;
           arrList.push(allcamres);//將參數(shù)放進數(shù)組
           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);
     將給訂的端口參數(shù)  arrList 取出并在保存交換機時保存端口信息。

2.交換機的統(tǒng)計
    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
    

統(tǒng)計的合并單元格的設(shè)計思路

  計算出同一個區(qū)域下得數(shù)量,再分別計算出與該條記錄相同的  機房,樓層,區(qū)域的各個數(shù)量以確定合并單元格的數(shù)量,并用數(shù)組中的唯一位置將數(shù)據(jù)存入。  
  代碼如下
  
  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) {
            // 獲得同一區(qū)域下的列
            if (t.getArae().equals(s.getArae())) {
                list.add(t);// 獲得每個list
            }
        }

        List arry = new ArrayList<>();// 存儲數(shù)量
        // 計算每個區(qū)域的數(shù)量
        Integer arae = 0, rooms = 0, torey = 0, distr = 0, tMode = 0;
        for (Board r : list) {
            if (r.getArae().equals(s.getArae())) { // 地區(qū)域
                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())) {// 區(qū)域
                distr++;
            }

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

        } 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);
            }

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

}
           
               
                                           
                       
                 
            
                     
             
               

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/70266.html

相關(guān)文章

  • Wizard 開源文檔管理系統(tǒng)1.0發(fā)布啦

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

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

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

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

    摘要:但這并不意味著敏捷開發(fā)完全拋棄文檔,敏捷開發(fā)遵循輕文檔,重溝通的原則。把功能點拆分,導入到項目管理軟件中,相關(guān)人員只需要按照需求目錄一條條執(zhí)行即可,不再需要一頁一頁的看了。如今的任務看板和燃盡圖已經(jīng)由實物形式轉(zhuǎn)變?yōu)轫椖抗芾碥浖? 我們比較熟知的軟件項目管理方法是瀑布。其基本流程是需求-> 設(shè)計->開發(fā)->測試?;炯僭O(shè)只要把每一個環(huán)節(jié)都做正確,那么最終得到的結(jié)果也是正確的。瀑布開發(fā)有非...

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

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

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

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

    BingqiChen 評論0 收藏0

發(fā)表評論

0條評論

張巨偉

|高級講師

TA的文章

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