<!DOCTYPE html>
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
<head>
|
<title>CRDS接口测试</title>
|
<meta http-equiv="Expires" content="0" />
|
<meta http-equiv="Cache" content="no-cache" />
|
<meta http-equiv="Pragma" content="no-cache" />
|
<meta http-equiv="Cache-control" content="no-cache" />
|
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
<script src="js/jquery.1.12.4.js"></script>
|
<script src="js/rsa.min.js"></script>
|
<script>
|
var app = {
|
// 内网
|
//server: "http://127.0.0.1:12316/server/",
|
server: "http://192.168.20.205:8088/server/",
|
// 外网
|
//server: "http://103.85.165.99:8052/server/",
|
token: null,
|
// 用户ID
|
userId: null,
|
// 任务ID
|
taskId: null
|
};
|
|
$(function () {
|
app.taskId = $("#taskId").val();
|
app.token = $("#token").val();
|
getPublicKey();
|
});
|
|
// 登录
|
function login() {
|
var uid = $.trim($("#userId").val());
|
var pwd = "Admin@1234_lf";
|
var data = {
|
"uid": encrypt.encrypt(uid),
|
"pwd": encrypt.encrypt(pwd)
|
};
|
|
ajax(app.server + "sign/login", "POST", JSON.stringify(data), "json", "application/json", function (rs) {
|
console.log(rs);
|
|
if (!rs || rs.code != 200) {
|
alert("登录失败:" + rs.msg);
|
} else {
|
app.token = rs.result.token;
|
$("#token").val(app.token);
|
}
|
});
|
}
|
|
// 验证
|
function check() {
|
$.get(app.server + "sign/check" + "?token=" + app.token, function (rs) {
|
console.log(rs);
|
|
if (!rs || rs.code != 200) return;
|
|
alert(rs.result ? "有效" : "失效,请重新登录");
|
});
|
}
|
|
// 登出
|
function logout() {
|
$.get(app.server + "sign/logout" + "?token=" + app.token, function (rs) {
|
console.log(rs);
|
|
if (!rs || rs.code != 200) return;
|
|
alert(rs.result ? "登出成功" : "登出失败");
|
app.token = null;
|
$("#token").val("");
|
});
|
}
|
|
// 查询项目
|
function selectProject() {
|
if (!app.token) return;
|
|
$.get(app.server + "crds/selectProject" + "?token=" + app.token, function (rs) {
|
console.log(rs);
|
|
if (!rs || rs.code != 200) return;
|
|
$("#selectDir").get(0).options.length = 0;
|
for (var i = 0, c = rs.result.length; i < c; i++) {
|
$("#selectDir").append("<option value='" + rs.result[i].code + "'" + (rs.result[i].code == "02" ? " selected='selected'" : "") + ">" + rs.result[i].name + "</option>");
|
}
|
});
|
}
|
|
// 查询项目目录树
|
function selectDirsForPrj() {
|
if (!app.token) return;
|
|
$.get(app.server + "crds/selectDirsForPrj" + "?token=" + app.token, function (rs) {
|
console.log(rs);
|
});
|
}
|
|
// 查询元数据文件
|
function selectMetasByDirCode() {
|
if (!app.token) return;
|
|
var args = "dircode=" + $("#selectDir").val();
|
$.get(app.server + "crds/selectMetasByDirCode" + "?token=" + app.token + "&" + args, function (rs) {
|
if (!rs || rs.code != 200) return;
|
|
console.log(rs);
|
});
|
}
|
|
// 请求打包
|
function uploadReqPackaging() {
|
if (!app.token) return;
|
|
var args = "dirCode=" + $("#selectDir").val() + "&major=" + $("#selectType").val() + "&isCut=NO";
|
$.get(app.server + "crds/uploadReqPackaging" + "?token=" + app.token + "&" + args, function (rs) {
|
console.log(rs);
|
|
if (!rs || rs.code != 200) return;
|
|
app.taskId = rs.result;
|
$("#taskId").val(rs.result);
|
});
|
}
|
|
// 查询任务状态
|
function selectTaskStatus() {
|
if (!app.token || !app.taskId) return;
|
|
$.get(app.server + "crds/selectTaskStatus" + "?token=" + app.token + "&id=" + app.taskId, function (rs) {
|
console.log(rs);
|
if (!rs) return;
|
|
if (rs.progress < 100) {
|
alert("任务尚未执行完成,请等待!");
|
return;
|
}
|
|
// rs.status:0-未知,1-成功,2-警告,3-失败,4-开始,5-运行,6-暂停,7-取消,8-正在取消,9-正在暂停,10-删除,11-重新提交
|
alert(rs.status == 1 ? "任务执行成功!" : "任务执行失败");
|
|
// 下载文件
|
if (rs.resultFile) {
|
var url = app.server + "crds/downloadFile" + "?token=" + app.token + "&id=" + app.taskId;
|
$("#downFrame").attr("src", url).click();
|
}
|
});
|
}
|
|
// 下载文件
|
function downloadFile() {
|
if (!app.token || !app.taskId) return;
|
|
var url = app.server + "crds/downloadFile" + "?token=" + app.token + "&id=" + app.taskId;
|
$("#downFrame").attr("src", url).click();
|
}
|
|
// 获取公钥
|
function getPublicKey() {
|
$.get(app.server + "sign/getPublicKey", function (rs) {
|
if (rs && rs.code == 200) {
|
window.encrypt = new JSEncrypt();
|
encrypt.setPublicKey(rs.result);
|
}
|
});
|
}
|
|
// ajax
|
function ajax(url, type, data, dataType, contentType, fn) {
|
$.ajax({
|
url: url,
|
type: type,
|
data: data,
|
dataType: dataType || "json",
|
contentType: contentType || "application/json",
|
success: function (data) {
|
fn(data);
|
},
|
error: function (e) {
|
console.error(e);
|
}
|
});
|
}
|
</script>
|
</head>
|
<body>
|
CRDS接口对接:<br />
|
<br />
|
|
UserId:<input id="userId" value="admin" type="text" style="width: 50px;" />
|
Token:<input id="token" value="d1217e7c-521e-4234-9354-3f61af7ff828" type="text" style="width: 256px;" />
|
<input value="登录" type="button" onclick="login();" />
|
<input value="验证" type="button" onclick="check();" />
|
<input value="登出" type="button" onclick="logout();" />
|
<br />
|
<br />
|
|
<input value="查询项目" type="button" onclick="selectProject();" />
|
<input value="查询项目目录树" type="button" onclick="selectDirsForPrj();" />
|
<input value="查询元数据文件" type="button" onclick="selectMetasByDirCode();" />
|
<br />
|
<br />
|
|
项目(目录):<select id="selectDir"></select>
|
|
类别:<select id="selectType">
|
<option selected="selected" value="穿跨越">穿跨越</option>
|
<option value="线路">线路</option>
|
</select>
|
<br />
|
<br />
|
|
任务ID:<input id="taskId" value="14167c2e-962b-4408-b460-fe7c2495e4e7" type="text" style="width: 256px;" />
|
<input value="请求打包" type="button" onclick="uploadReqPackaging();" />
|
<input value="查询任务状态" type="button" onclick="selectTaskStatus();" />
|
<input value="下载文件" type="button" onclick="downloadFile();" />
|
|
<iframe id="downFrame" style="display: none; border: 0; padding: 0; height: 0; width: 0"></iframe>
|
<hr />
|
<br />
|
</body>
|
</html>
|