mirror of
https://github.com/midoks/mdserver-web.git
synced 2026-10-10 04:19:26 +08:00
update
This commit is contained in:
@@ -179,21 +179,27 @@ class nosqlMySQLCtr():
|
||||
|
||||
|
||||
args_where = {}
|
||||
where_sql = ''
|
||||
if 'where' in args:
|
||||
args_where = args['where']
|
||||
if 'field' in args_where:
|
||||
if args_where['field'] == 'id' or args_where['field'].find('id')>-1:
|
||||
where_sql = ' where '+args_where['field'] + " = '"+args_where['value']+"' "
|
||||
else:
|
||||
where_sql = ' where '+args_where['field'] + " like '%"+args_where['value']+"%' "
|
||||
|
||||
my_instance = self.getInstanceBySid(sid).conn()
|
||||
if my_instance is False:
|
||||
return mw.returnData(False,'无法链接')
|
||||
|
||||
my_instance.setDbName(db)
|
||||
sql = 'select count(*) as num from ' + table
|
||||
sql = 'select count(*) as num from ' + table + where_sql
|
||||
# print(sql)
|
||||
count_result = my_instance.query(sql)
|
||||
count = count_result[0]['num']
|
||||
|
||||
|
||||
sql = 'select * from ' + table + ' limit '+str(start_index)+',10';
|
||||
|
||||
sql = 'select * from ' + table + where_sql + ' limit '+str(start_index)+',10';
|
||||
# print(sql)
|
||||
result = my_instance.query(sql)
|
||||
# print(result)
|
||||
@@ -212,10 +218,20 @@ class nosqlMySQLCtr():
|
||||
rdata['soso_field'] = ''
|
||||
if 'field' in args_where:
|
||||
rdata['soso_field'] = args_where['field']
|
||||
|
||||
|
||||
return mw.returnData(True,'ok', rdata)
|
||||
|
||||
def showProcessList(self,args):
|
||||
sql = 'show processlist';
|
||||
sid = args['sid']
|
||||
|
||||
my_instance = self.getInstanceBySid(sid).conn()
|
||||
if my_instance is False:
|
||||
return mw.returnData(False,'无法链接')
|
||||
|
||||
result = my_instance.query(sql)
|
||||
rdata = {}
|
||||
rdata['list'] = result
|
||||
return mw.returnData(True,'ok', rdata)
|
||||
|
||||
# ---------------------------------- run ----------------------------------
|
||||
# 获取 mysql 列表
|
||||
@@ -232,6 +248,10 @@ def get_data_list(args):
|
||||
t = nosqlMySQLCtr()
|
||||
return t.getDataList(args)
|
||||
|
||||
def get_proccess_list(args):
|
||||
t = nosqlMySQLCtr()
|
||||
return t.showProcessList(args)
|
||||
|
||||
# 测试
|
||||
def test(args):
|
||||
sid = args['sid']
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<div class="tabs-item active" data-name="redis">Redis</div>
|
||||
<div class="tabs-item" data-name="mongodb">Mongodb</div>
|
||||
<div class="tabs-item" data-name="memcached">Memcached</div>
|
||||
<!-- <div class="tabs-item" data-name="mysql">MySQL</div> -->
|
||||
<div class="tabs-item" data-name="mysql">MySQL</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -59,7 +59,7 @@
|
||||
</div>
|
||||
|
||||
<div style="position: relative;">
|
||||
<div id="mysql_table" class="mongodb_table divtable mtb10">
|
||||
<div id="mysql_table" class="mysql_table divtable mtb10">
|
||||
<table class="table table-hover">
|
||||
<thead style="position: relative;z-index: 1;">
|
||||
<tr>
|
||||
@@ -79,7 +79,7 @@
|
||||
</div>
|
||||
|
||||
<div class="col-md-3" style="padding-left: 3px;">
|
||||
<div id="mysql_list_tab" style="padding-top:10px;">
|
||||
<div id="mysql_list_tab" style="padding-top:0px;">
|
||||
<div class="tab-nav">
|
||||
<span data-id="0" class="on">进程</span>
|
||||
<span data-id="1" class="">变量</span>
|
||||
@@ -87,6 +87,22 @@
|
||||
<span data-id="3" class="">统计</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="position: relative;">
|
||||
<div id="mysql_ot_table" class="divtable mtb10" style="margin-top: 8px;">
|
||||
<table class="table table-hover">
|
||||
<thead style="position: relative;z-index: 1;">
|
||||
<tr>
|
||||
<th><span>编号</span></th>
|
||||
<th><span>操作类型</span></th>
|
||||
<th><span>详情</span></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody></tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -224,6 +224,7 @@ function initTabMemcached(){
|
||||
|
||||
function initTabMySQL(){
|
||||
mysqlGetDbList();
|
||||
mysqlProcessList();
|
||||
}
|
||||
|
||||
// ------------------------- mysql start -------------------------------
|
||||
@@ -259,7 +260,7 @@ function mysqlInitField(f, data){
|
||||
layer.msg('搜索不能为空!',{icon:7});
|
||||
return;
|
||||
}
|
||||
mysqlDataList(1);
|
||||
mysqlGetDataList(1);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -326,41 +327,99 @@ function mysqlGetDataList(p){
|
||||
var sid = mysqlGetSid();
|
||||
var db = mysqlGetDbName();
|
||||
var table = mysqlGetTableName();
|
||||
myPostCB('get_data_list',{'sid':sid,'db':db,'table':table,'p':p} ,function(rdata){
|
||||
|
||||
var mysql_field = $('select[name="mysql_field_key"]').val();
|
||||
var mysql_value = $('input[name="mysql_field_value"]').val();
|
||||
|
||||
var request_data = {
|
||||
'sid':sid,
|
||||
'db':db,
|
||||
'table':table,
|
||||
'p':p
|
||||
};
|
||||
|
||||
if (mysql_field != '0'){
|
||||
request_data['where'] = {
|
||||
field : mysql_field,
|
||||
value : mysql_value
|
||||
};
|
||||
} else {
|
||||
request_data['where'] = {};
|
||||
}
|
||||
// console.log(request_data);
|
||||
myPostCB('get_data_list',request_data ,function(rdata){
|
||||
|
||||
if (rdata.data.status){
|
||||
var data = rdata.data.data;
|
||||
var dlist = data['list'];
|
||||
|
||||
if (rdata.data.status){
|
||||
var data = rdata.data.data;
|
||||
var dlist = data['list'];
|
||||
|
||||
var fields = mongodbGetDataFields(dlist);
|
||||
if (fields.length != 0 ){
|
||||
mysqlInitField(fields,data);
|
||||
}
|
||||
|
||||
var header_field = '';
|
||||
for (var i =0 ; i<fields.length ; i++) {
|
||||
header_field += '<th>'+fields[i]+'</th>';
|
||||
}
|
||||
$('#mysql_table thead tr').html(header_field);
|
||||
|
||||
var tbody = '';
|
||||
for (var i = 0; i < dlist.length; i++) {
|
||||
tbody += '<tr>';
|
||||
for (var j = 0; j < fields.length; j++) {
|
||||
var f = fields[j];
|
||||
if (f in dlist[i]) {
|
||||
tbody += '<td style="word-wrap:break-word;word-break:break-all;">'+dlist[i][f]+'</td>';
|
||||
} else {
|
||||
tbody += '<td>undefined</td>';
|
||||
}
|
||||
}
|
||||
tbody += '</tr>';
|
||||
}
|
||||
|
||||
$('#mysql_table tbody').html(tbody);
|
||||
$('#mysql .mysql_list_page').html(data.page);
|
||||
var fields = mongodbGetDataFields(dlist);
|
||||
if (fields.length != 0 ){
|
||||
mysqlInitField(fields,data);
|
||||
}
|
||||
|
||||
var header_field = '';
|
||||
for (var i =0 ; i<fields.length ; i++) {
|
||||
header_field += '<th>'+fields[i]+'</th>';
|
||||
}
|
||||
$('#mysql_table thead tr').html(header_field);
|
||||
|
||||
var tbody = '';
|
||||
for (var i = 0; i < dlist.length; i++) {
|
||||
tbody += '<tr>';
|
||||
for (var j = 0; j < fields.length; j++) {
|
||||
var f = fields[j];
|
||||
if (f in dlist[i]) {
|
||||
tbody += '<td style="word-wrap:break-word;word-break:break-all;">'+dlist[i][f]+'</td>';
|
||||
} else {
|
||||
tbody += '<td>undefined</td>';
|
||||
}
|
||||
}
|
||||
tbody += '</tr>';
|
||||
}
|
||||
|
||||
$('#mysql_table tbody').html(tbody);
|
||||
$('#mysql .mysql_list_page').html(data.page);
|
||||
}
|
||||
//
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
function mysqlProcessList(){
|
||||
var sid = mysqlGetSid();
|
||||
var request_data = {};
|
||||
request_data['sid'] = sid;
|
||||
myPostCB('get_proccess_list',request_data ,function(rdata){
|
||||
console.log(rdata);
|
||||
if (rdata.data.status){
|
||||
var data = rdata.data.data;
|
||||
var dlist = data['list'];
|
||||
|
||||
var fields = mongodbGetDataFields(dlist);
|
||||
|
||||
var header_field = '';
|
||||
for (var i =0 ; i<fields.length ; i++) {
|
||||
header_field += '<th>'+fields[i]+'</th>';
|
||||
}
|
||||
$('#mysql_ot_table thead tr').html(header_field);
|
||||
|
||||
var tbody = '';
|
||||
for (var i = 0; i < dlist.length; i++) {
|
||||
tbody += '<tr>';
|
||||
for (var j = 0; j < fields.length; j++) {
|
||||
var f = fields[j];
|
||||
if (f in dlist[i]) {
|
||||
tbody += '<td style="word-wrap:break-word;word-break:break-all;">'+dlist[i][f]+'</td>';
|
||||
} else {
|
||||
tbody += '<td>undefined</td>';
|
||||
}
|
||||
}
|
||||
tbody += '</tr>';
|
||||
}
|
||||
|
||||
$('#mysql_ot_table tbody').html(tbody);
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user