diff options
author | zheng_wenlong <wenlong_zheng@nexty-ele.com> | 2019-04-16 11:20:38 +0900 |
---|---|---|
committer | zheng_wenlong <wenlong_zheng@nexty-ele.com> | 2019-05-13 17:50:04 +0900 |
commit | 3b55d06b89bf64873e685c3d78fce5affbba3d17 (patch) | |
tree | 2adcff0087f4757107d2bf1e50c85ea649f04f94 /warehouse/src/main/webapp/WEB-INF/pages/app/list.jsp |
Add warehouse server source code.icefish_8.99.5icefish_8.99.4icefish_8.99.3icefish_8.99.2icefish_8.99.1icefish/8.99.5icefish/8.99.4icefish/8.99.3icefish/8.99.2icefish/8.99.1halibut_8.0.6halibut_8.0.5halibut_8.0.4halibut_8.0.3halibut_8.0.2halibut_8.0.1halibut_8.0.0halibut_7.99.3halibut_7.99.2halibut_7.99.1halibut/8.0.6halibut/8.0.5halibut/8.0.4halibut/8.0.3halibut/8.0.2halibut/8.0.1halibut/8.0.0halibut/7.99.3halibut/7.99.2halibut/7.99.18.99.58.99.48.99.38.99.28.99.18.0.68.0.58.0.48.0.38.0.28.0.18.0.07.99.37.99.27.99.1halibut
[Patch Set 2] Add ReadMe.md
Change-Id: I6ade52d2490f5ca4ba107c1a27ed6d5b39048725
Signed-off-by: zheng_wenlong <wenlong_zheng@nexty-ele.com>
Diffstat (limited to 'warehouse/src/main/webapp/WEB-INF/pages/app/list.jsp')
-rw-r--r-- | warehouse/src/main/webapp/WEB-INF/pages/app/list.jsp | 393 |
1 files changed, 393 insertions, 0 deletions
diff --git a/warehouse/src/main/webapp/WEB-INF/pages/app/list.jsp b/warehouse/src/main/webapp/WEB-INF/pages/app/list.jsp new file mode 100644 index 0000000..c4064e9 --- /dev/null +++ b/warehouse/src/main/webapp/WEB-INF/pages/app/list.jsp @@ -0,0 +1,393 @@ +<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> +<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> +<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> +<% + +String path = request.getContextPath(); +String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path; +String ippath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort(); +%> +<style type="text/css"> + div.dataTables_wrapper div.dataTables_info { + padding-top: 0.3em; + white-space: nowrap; + margin-left:120px; +} + a.page-link{ + height:calc(1.8125rem + 4px); + margin-left:-5px; + } + +</style> +<div class="alert alert-secondary container" role="alert"> + <div style="display:inline-block">App</div> +</div> +<c:choose> + <c:when test="${not empty modelErrors}"> + <div class="alert alert-danger" id="modalErrorArea" role="alert"> + ${modelErrors} + </div> + </c:when> + <c:otherwise> + <div class="card mb-3"> + <div class="card-header"> + <div class=""> + <div class="alert alert-danger" id="modalErrorArea" role="alert"<c:choose> + <c:when test="${not empty modelErrors}">style="display: block"</c:when> + <c:otherwise>style="display: none"</c:otherwise> + </c:choose>> + <c:if test="${not empty modelErrors}"> + ${modelErrors} + </c:if> + </div> + <input type="text" class="form-control" id="t_filePath" size="16" name="t_filePath" style="display:none;"> + <div class="row" > + <div class="col"> + <div class="form-group"> + <label class="control-label" for="t_appTypeId">AppType</label> + <select id="t_appTypeId" class="form-control"> + <c:forEach var="list" items="${appTypeList}"> + <option value="${list.value}">${list.label}</option> + </c:forEach> + </select> + </div> + </div> + <div class="col" > + <div class="form-group"> + <label class="control-label" for="t_appDeveloper">DeviceType</label> + <select id="e_deviceTypeId" class="form-control"> + <c:forEach var="list" items="${appDeviceTypeList}"> + <option value="${list.value}">${list.label}</option> + </c:forEach> + </select> + </div> + </div> + <div class="col"> + <div style="position:absolute;right:20px;top:40px;cursor:pointer;display:none;" class="input_clear"> + <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> + </div> + <label class="control-label" for="t_keyWord">KeyWord</label> + <input type="text" class="form-control style-height" id="t_keyWord" size="16" name="t_keyWord" placeholder="please enter"> + </div> + <div class="col" style="visibility:hidden"> + <div style="position:absolute;right:20px;top:40px;cursor:pointer;display:none;" class="input_clear"> + <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> + </div> + <label class="control-label" for="t_appName">Developer</label> + <input type="text" class="form-control style-height" id="t_appDeveloper" name="t_appDeveloper" size="16" placeholder="please enter"> + </div> + </div> + </div> + <div class="row"> + <div class="col" style="text-align:right;"> + <c:if test="${fn:contains(menuPathString, 'app/insert')}"> + <button type="button" class="btn btn-primary pl20 pr20" id="btn-save-edit" onclick="Commons.showContent('<%=basePath%>/app/initCreate')">Create</button> + </c:if> + <button type="button" class="btn btn-success pl20 pr20 ml10" id="listSearch" onclick="search()">Search</button> + <button id="gridView" type="button" class="btn btn-info pl20 pr20 ml10" onclick="chageView(1)" style="float:right">gridView</button> + <button id="listView" type="button" class="btn btn-info pl20 pr20 ml10" onclick="chageView(0)" style="float:right">listView</button> + </div> + </div> + </div> + <div class="card-body" style="margin-left:12px;margin-right:12px;"> + <div class="table-responsive" id="div-table-container"> + <table id="example" cellspacing="0" style="width:100%;"> + <thead> + </thead> + </table> + <div style="height:20px;"></div> + </div> + <div id="grid"> + <div id="chunk" class="row"></div> + </div> + <div style="display: none;" id="page"> + <div class="row"> + <div class="col-md-6" style="text-align:right"> + <button id="last" type="button" class="btn btn-primary" + onclick="chunk(0)"><h4 style="color:white"><</h4></button> + </div> + <div class="col-md-6"> + <button id="next" type="button" class="btn btn-primary" + onclick="chunk(1)"><h4 style="color:white">></h4></button> + </div> + </div> + </div> + </div> + </div> + </c:otherwise> +</c:choose> +<script src="<%=basePath%>/js/main.js"></script> +<script src="<%=basePath%>/js/jquery.cookie.js"></script> +<script> + +$(function() { + $("#listView").css('display','none'); + $("input").focus(function(){ + $(this).parent().children(".input_clear").show(); + }); + $("input").blur(function(){ + if($(this).val()==''){ + $(this).parent().children(".input_clear").hide(); + } + }); + $(".input_clear").click(function(){ + $(this).parent().find('input').val(''); + $(this).hide(); + }); + + $(".card-body").css({ + minHeight:($(window).height()-500) + }) + Commons.bindDateControl(); + Commons.appendRedAsterisk(); + init(); +}); + +var $table = $('#example'); +var $errorArea = $('#modalErrorArea'); +var queryParam = function(param) { + param.orderColumn = param.order[0].column; + param.orderDir = param.order[0].dir; + param.keyWord = $('#t_keyWord').val(); + param.typeId = $('#t_appTypeId').val(); + param.deviceTypeId = $('#e_deviceTypeId').val(); + param.filepath = $('#t_filePath').val(); + return param; +}; + + var strSub = function(str, subLen){ + if(str == null){ + return ""; + } + var subStr = str; + var len = 0; + for (var i=0; i<str.length; i++) { + if (str.charCodeAt(i)>127 || str.charCodeAt(i)==94) { + len += 2; + } else { + len ++; + } + if(len >= subLen){ + subStr = str.substring(0, i); + break; + } + } + return subStr; +}; + +var strName = function(str, subLen){ + if (str == null){ + return ""; + } + if (str.length > subLen) { + str=str.substring(0,subLen-3); + var appName = str+"..."; + }else{ + var appName = str; + } + return appName; +}; +function init(){ + var flag = $.cookie('flag'); + if(flag == 1){ + chunk(); + }else{ + initTable(); + } +} + +function search(){ + var flag = getCookie("flag"); + if(flag == 1){ + chunk(); + }else{ + $table.DataTable().ajax.reload(); + } +} + +function setCookie(key,value){ + $.cookie(key, value, { expires: 7 ,path:'/'}); +} + +function getCookie(key){ + return $.cookie(key); +} + +function lastPageButton(start){ + if(start == 0){ + $("#last").attr('disabled',true); + }else{ + $("#last").attr('disabled',false); + } +} + +function nextPageButton(i,length){ + if(i < length){ + $("#next").attr('disabled',true); + }else{ + $("#next").attr('disabled',false); + } +} +var check = 0; +function chageView(value){ + if(value == 0){ + if(check == 1){ + $table.DataTable().ajax.reload(); + }else{ + initTable(); + } + }else{ + chunk(); + } +} + +//chunkList +var nowStart = 0; +function chunk(page){ + var start = 0; + var length = 48; + // last page + if(page == 0){ + start = nowStart - length; + } + // next page + if(page == 1){ + start = nowStart + length; + } + nowStart = start; + + $("#div-table-container").css('display','none'); + $("#gridView").css('display','none'); + $("#grid").css('display','block'); + $("#page").css('display','block'); + $("#listView").css('display','block'); + setCookie("flag",1); + var keyWord = $('#t_keyWord').val(); + var appTypeId = $('#t_appTypeId').val(); + var deviceTypeId = $('#e_deviceTypeId').val(); + + $.ajax({ + url: '<%=basePath%>/app/search', + data: { "draw":"1","length":length,"start":nowStart,"orderColumn":"1","orderDir":"asc","typeId":appTypeId,"deviceTypeId":deviceTypeId,"keyWord":keyWord}, + type: 'GET', + dataFilter: function(data){ + $errorArea.empty(); + $errorArea.css("display", "none"); + $("#chunk").empty(); + var json = $.parseJSON(data); + debugger; + if (json.statusCode && json.statusCode != null) { + $errorArea.empty().append('<div>' + json.statusText + '</div>'); + $errorArea.css("display", "block"); + } + var i = 0; + $.each(json.data, function(index, item){ + i++; + var imagePath = '<%=ippath%>'+item.imagePath; + if(item.imagePath == ''){ + imagePath = '<%=basePath%>/image/defaultAppIcon.png'; + } + var appName = strName(item.appName, 16); + var a = '<div class="col-md-3" style="height:340px;padding: 12px;">' + +'<div onclick="Commons.showContent(\'<%=basePath%>/app/more?appId='+ item.appId+ '\')" style="border-radius:3px;padding:18px; border:1px solid #BEBEBE;background:#F0F0F0; cursor:pointer;box-shadow: darkgrey 1px 1px 30px 0px">' + + '<div style="height:190px;width:100%;border:1px solid #BEBEBE">' + + '<img style="height:100%; width:100%;border-radius:3px;box-shadow:0px 0px 10px 0px darkgrey inset" src='+imagePath+'>' + +'</div>' + + '<h6 style="margin-bottom:5px; margin-top:10px">'+ appName + '</h5>' + + '<p style="margin-bottom:2px; color:#111">'+ item.appDeviceTypeName + '</p>' + + '<p style="margin-bottom:0px; color:#111">'+ item.typeName+ '</p>' + +'</div>' + +'</div>'; + $("#chunk").append(a); + }); + lastPageButton(start); + nextPageButton(i, length) + } + }) +} +function initTable() { + check = 1; + $table.DataTable({ + order: [[ 1 , 'asc' ]], + displayLength:50, + ajax: { + url: '<%=basePath%>/app/search', + data: queryParam, + type: 'GET', + dataFilter: function(data){ + $("#div-table-container").css('display','block'); + $("#gridView").css('display','block'); + $("#grid").css('display','none'); + $("#page").css('display','none'); + $("#listView").css('display','none'); + setCookie("flag",0); + + $errorArea.empty(); + $errorArea.css("display", "none"); + var json = $.parseJSON(data); + debugger; + if (json.statusCode && json.statusCode != null) { + $errorArea.empty().append('<div>' + json.statusText + '</div>'); + $errorArea.css("display", "block"); + } + return data; // return JSON string + } + }, + columns: [ + { + className : 'td-operation', + data: null, + defaultContent:'', + orderable : false, + width : '100%', + render: function(data, type, row, meta) + { + var deleteBtn = ''; + var modifyBtn = ''; + var imagePath = '<%=ippath%>' + data.imagePath; + if($('#auId').val() == 1 || ($('#auId').val() == 2 && data.developer == $('#userId').val())){ + deleteBtn = '<a href="javascript:void(0)" style="margin-left:0.5em" class="data-delete" data-data-id="'+data.appId+'">' + +'<button type="button" style="margin-right:auto;" class="btn btn-skin">    Delete    </button></a>'; + modifyBtn = '<a style="margin-left:0.5em" onclick="Commons.showContent(\'<%=basePath%>/app/initInfo?appId='+data.appId+'&modifyFlag='+1+'\')" >' + +'<button type="button" class="btn btn-skin"> Modify </button></a>'; + } + //default image + if(data.imagePath == ''){ + imagePath = '<%=basePath%>/image/defaultAppIcon.png'; + } + + var downloadBtn = '<a href="<%=basePath%>/app/download?appId=' + data.appId + '&typeId=' + data.typeId + '&filePath='+ data.verFilePath + '&token=' + $("#tokenAuthorization").val() + + '"onclick="">'+'<button type="button" style="margin-right:auto;" class="btn btn-skin">DownLoad</button></a>'; + var abstractSubStr = strSub(data.appAbstract, 300); + var date = new Date(data.createDate).format("yyyy-MM-dd"); + + var context = '<article><div style="width:100%; height:100%;border-bottom:1px solid black; word-break: break-all; word-wrap:break-word; padding:20px">' + +'<div class="art-header"><h2 style="margin-top:10px;">'+data.appName+'</h2></div>' + +'<div class="info" >By <a>'+data.developerName+'</a> '+ date +'</div>' + +'<div class="art-content">' + +'<img style="height:120px;width:120px" src=' + imagePath + '>' + +'<div class="ellipsis4" style="color:#272727">'+data.appAbstract+'</div>' + +'<a href="javascript:void(0)" style="color:#1ECD97; padding:8px" onclick="Commons.showContent(\'<%=basePath%>/app/more?appId='+data.appId+'\')">MORE</a>'+'</div>' + +'<div class="art-header" style="color:#ADADAD;"> MD5:<a>'+data.hashcode+'</a></div>' + +'<div class="art-footer">' + downloadBtn + deleteBtn + modifyBtn + ' </div>' + +'</div></article>'; + return context; + } + }, + { + data: null, + defaultContent:'', + orderable : false, + width : '1px', + render: function(data, type, row, meta) { + return null; + } + } + ], + drawCallback: function(settings) { + TableListDeletePlugin.init('example', '<%=basePath%>/app/search', '<%=basePath%>/app/delete'); + $(window).scrollTop(0); + } + }); +} +</script>
\ No newline at end of file |