[Advanced Logbook] ADIF export fetches sort order from table sort (not all columns)
这个提交包含在:
父节点
4d56a09d09
当前提交
cb71e0961f
共有 3 个文件被更改,包括 21 次插入 和 5 次删除
|
|
@ -125,9 +125,10 @@ class Logbookadvanced extends CI_Controller {
|
||||||
$this->load->model('logbookadvanced_model');
|
$this->load->model('logbookadvanced_model');
|
||||||
|
|
||||||
$ids = xss_clean($this->input->post('id'));
|
$ids = xss_clean($this->input->post('id'));
|
||||||
|
$sortorder = xss_clean($this->input->post('sortorder'));
|
||||||
$user_id = (int)$this->session->userdata('user_id');
|
$user_id = (int)$this->session->userdata('user_id');
|
||||||
|
|
||||||
$data['qsos'] = $this->logbookadvanced_model->getQsosForAdif($ids, $user_id);
|
$data['qsos'] = $this->logbookadvanced_model->getQsosForAdif($ids, $user_id, $sortorder);
|
||||||
|
|
||||||
$this->load->view('adif/data/exportall', $data);
|
$this->load->view('adif/data/exportall', $data);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -112,7 +112,7 @@ class Logbookadvanced_model extends CI_Model {
|
||||||
return $qsos;
|
return $qsos;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getQsosForAdif($ids, $user_id) : object {
|
public function getQsosForAdif($ids, $user_id, $sortorder) : object {
|
||||||
$binding = [$user_id];
|
$binding = [$user_id];
|
||||||
$conditions[] = "COL_PRIMARY_KEY in ?";
|
$conditions[] = "COL_PRIMARY_KEY in ?";
|
||||||
$binding[] = json_decode($ids, true);
|
$binding[] = json_decode($ids, true);
|
||||||
|
|
@ -122,6 +122,21 @@ class Logbookadvanced_model extends CI_Model {
|
||||||
$where = "AND $where";
|
$where = "AND $where";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$sortorder = explode(',', $sortorder);
|
||||||
|
|
||||||
|
switch($sortorder[0]) {
|
||||||
|
case 1: $order = 'ORDER BY qsos.COL_TIME_ON ' . $sortorder[1]; break;
|
||||||
|
case 2: $order = 'ORDER BY station_profile.station_callsign ' . $sortorder[1]; break;
|
||||||
|
case 3: $order = 'ORDER BY qsos.COL_CALL ' . $sortorder[1]; break;
|
||||||
|
case 4: $order = 'ORDER BY qsos.COL_MODE' . $sortorder[1] . ', qsos.COL_SUBMODE ' . $sortorder[1]; break;
|
||||||
|
case 7: $order = 'ORDER BY qsos.COL_BAND ' . $sortorder[1] . ', qsos.COL_SAT_NAME ' . $sortorder[1]; break;
|
||||||
|
case 15: $order = 'ORDER BY qsos.COL_COUNTRY ' . $sortorder[1]; break;
|
||||||
|
case 16: $order = 'ORDER BY qso.COL_STATE ' . $sortorder[1]; break;
|
||||||
|
case 17: $order = 'ORDER BY qsos.COL_CQZ ' . $sortorder[1]; break;
|
||||||
|
case 18: $order = 'ORDER BY qsos.COL_IOTA ' . $sortorder[1]; break;
|
||||||
|
default: $order = 'ORDER BY qsos.COL_TIME_ON desc'; break;
|
||||||
|
}
|
||||||
|
|
||||||
$sql = "
|
$sql = "
|
||||||
SELECT *, dxcc_entities.name AS station_country
|
SELECT *, dxcc_entities.name AS station_country
|
||||||
FROM " . $this->config->item('table_name') . " qsos
|
FROM " . $this->config->item('table_name') . " qsos
|
||||||
|
|
@ -129,7 +144,7 @@ class Logbookadvanced_model extends CI_Model {
|
||||||
LEFT OUTER JOIN dxcc_entities ON qsos.COL_MY_DXCC = dxcc_entities.adif
|
LEFT OUTER JOIN dxcc_entities ON qsos.COL_MY_DXCC = dxcc_entities.adif
|
||||||
WHERE station_profile.user_id = ?
|
WHERE station_profile.user_id = ?
|
||||||
$where
|
$where
|
||||||
ORDER BY qsos.COL_TIME_ON desc
|
$order
|
||||||
";
|
";
|
||||||
|
|
||||||
return $this->db->query($sql, $binding);
|
return $this->db->query($sql, $binding);
|
||||||
|
|
|
||||||
|
|
@ -50,7 +50,7 @@ function loadQSOTable(rows) {
|
||||||
"scrollCollapse": true,
|
"scrollCollapse": true,
|
||||||
"paging": false,
|
"paging": false,
|
||||||
"scrollX": true,
|
"scrollX": true,
|
||||||
"order": [ 0, 'asc' ],
|
"order": [ 1, 'desc' ],
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -293,7 +293,7 @@ $(document).ready(function () {
|
||||||
xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
|
xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
|
||||||
// You should set responseType as blob for binary responses
|
// You should set responseType as blob for binary responses
|
||||||
xhttp.responseType = 'blob';
|
xhttp.responseType = 'blob';
|
||||||
xhttp.send("id=" + JSON.stringify(id_list, null, 2));
|
xhttp.send("id=" + JSON.stringify(id_list, null, 2)+"&sortorder=" +$('.table').DataTable().order());
|
||||||
$('#exportAdif').prop("disabled", false);
|
$('#exportAdif').prop("disabled", false);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
||||||
正在加载…
在新工单中引用