Commit cab4f281 authored by ruanshudong's avatar ruanshudong
Browse files

add view merge template

parent 85b20c2a
Showing with 47 additions and 39 deletions
+47 -39
......@@ -16,6 +16,7 @@
const logger = require('../../logger');
const TemplateService = require('../../service/template/TemplateService');
const AdminService = require('../../service/admin/AdminService');
const _ = require('lodash');
const util = require('../../tools/util');
const AuthService = require('../../service/auth/AuthService');
......@@ -74,6 +75,16 @@ TemplateController.getTemplate = async (ctx) => {
}
};
TemplateController.getMergeTemplate = async (ctx) => {
try {
let templateName = ctx.paramsObj.template_name;
ctx.makeResObj(200, '', {template: await AdminService.getProfileTemplate(templateName)});
} catch (e) {
logger.error('[getMergeTemplate]', e, ctx);
ctx.makeErrResObj();
}
};
TemplateController.getTemplateList = async (ctx) => {
try {
let templateName = ctx.paramsObj.template_name || '';
......
......@@ -177,6 +177,7 @@ const apiConf = [
parents_name: 'notEmpty',
profile: 'notEmpty'
}],
['get', '/get_merge_profile_template', TemplateController.getMergeTemplate, { template_name: 'notEmpty' }],
['get', '/delete_profile_template', TemplateController.deleteTemplate, { id: 'notEmpty' }],
['post', '/update_profile_template', TemplateController.updateTemplate, {
id: 'notEmpty',
......
......@@ -188,4 +188,15 @@ AdminService.checkServer = async(server) => {
}
};
AdminService.getProfileTemplate = async(profileName) => {
let ret = await adminRegPrx.getProfileTemplate(profileName);
if (ret.__return === 0) {
return ret.profileTemplate;
} else {
throw new Error(__return);
}
};
module.exports = AdminService;
\ No newline at end of file
<!DOCTYPE html><html lang=en><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1"><link rel=icon href=/favicon.ico><title>DCache</title><link href=/css/chunk-common.30dd79ac.css rel=preload as=style><link href=/css/chunk-vendors.4fa751bd.css rel=preload as=style><link href=/css/dcache.5a9fded0.css rel=preload as=style><link href=/js/chunk-common.2090337e.js rel=preload as=script><link href=/js/chunk-vendors.61dbaa03.js rel=preload as=script><link href=/js/dcache.194a2217.js rel=preload as=script><link href=/css/chunk-vendors.4fa751bd.css rel=stylesheet><link href=/css/chunk-common.30dd79ac.css rel=stylesheet><link href=/css/dcache.5a9fded0.css rel=stylesheet></head><body><noscript><strong>We're sorry but DCache doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id=app></div><script src=/js/chunk-vendors.61dbaa03.js></script><script src=/js/chunk-common.2090337e.js></script><script src=/js/dcache.194a2217.js></script></body></html>
\ No newline at end of file
<!DOCTYPE html><html lang=en><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1"><link rel=icon href=/favicon.ico><title>DCache</title><link href=/css/chunk-common.30dd79ac.css rel=preload as=style><link href=/css/chunk-vendors.4fa751bd.css rel=preload as=style><link href=/css/dcache.5a9fded0.css rel=preload as=style><link href=/js/chunk-common.6fc23593.js rel=preload as=script><link href=/js/chunk-vendors.61dbaa03.js rel=preload as=script><link href=/js/dcache.194a2217.js rel=preload as=script><link href=/css/chunk-vendors.4fa751bd.css rel=stylesheet><link href=/css/chunk-common.30dd79ac.css rel=stylesheet><link href=/css/dcache.5a9fded0.css rel=stylesheet></head><body><noscript><strong>We're sorry but DCache doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id=app></div><script src=/js/chunk-vendors.61dbaa03.js></script><script src=/js/chunk-common.6fc23593.js></script><script src=/js/dcache.194a2217.js></script></body></html>
\ No newline at end of file
<!DOCTYPE html><html lang=en><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1"><link rel=icon href=/favicon.ico><title>TarsNodeWeb</title><link href=/css/chunk-common.30dd79ac.css rel=preload as=style><link href=/css/chunk-vendors.4fa751bd.css rel=preload as=style><link href=/css/index.4764c9fc.css rel=preload as=style><link href=/js/chunk-common.2090337e.js rel=preload as=script><link href=/js/chunk-vendors.61dbaa03.js rel=preload as=script><link href=/js/index.7a0e2ad6.js rel=preload as=script><link href=/css/chunk-vendors.4fa751bd.css rel=stylesheet><link href=/css/chunk-common.30dd79ac.css rel=stylesheet><link href=/css/index.4764c9fc.css rel=stylesheet></head><body><noscript><strong>We're sorry but TarsNodeWeb doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id=app></div><script src=/js/chunk-vendors.61dbaa03.js></script><script src=/js/chunk-common.2090337e.js></script><script src=/js/index.7a0e2ad6.js></script></body></html>
\ No newline at end of file
<!DOCTYPE html><html lang=en><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1"><link rel=icon href=/favicon.ico><title>TarsNodeWeb</title><link href=/css/chunk-common.30dd79ac.css rel=preload as=style><link href=/css/chunk-vendors.4fa751bd.css rel=preload as=style><link href=/css/index.4764c9fc.css rel=preload as=style><link href=/js/chunk-common.6fc23593.js rel=preload as=script><link href=/js/chunk-vendors.61dbaa03.js rel=preload as=script><link href=/js/index.d316665f.js rel=preload as=script><link href=/css/chunk-vendors.4fa751bd.css rel=stylesheet><link href=/css/chunk-common.30dd79ac.css rel=stylesheet><link href=/css/index.4764c9fc.css rel=stylesheet></head><body><noscript><strong>We're sorry but TarsNodeWeb doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id=app></div><script src=/js/chunk-vendors.61dbaa03.js></script><script src=/js/chunk-common.6fc23593.js></script><script src=/js/index.d316665f.js></script></body></html>
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -17,8 +17,9 @@
<let-table-column :title="$t('deployService.form.template')" prop="template_name" width="25%"></let-table-column>
<let-table-column :title="$t('template.search.parentTemplate')" prop="parents_name" width="25%"></let-table-column>
<let-table-column :title="$t('cfg.btn.lastUpdate')" prop="posttime"></let-table-column>
<let-table-column :title="$t('operate.operates')" width="180px">
<let-table-column :title="$t('operate.operates')" width="300px">
<template slot-scope="scope">
<let-table-operation @click="mergeItem(scope.row)">{{$t('operate.merge')}}</let-table-operation>
<let-table-operation @click="viewItem(scope.row)">{{$t('operate.view')}}</let-table-operation>
<let-table-operation @click="editItem(scope.row)">{{$t('operate.update')}}</let-table-operation>
<let-table-operation @click="removeItem(scope.row)">{{$t('operate.delete')}}</let-table-operation>
......@@ -146,7 +147,19 @@ export default {
this.detailModal.show = true;
this.detailModal.isNew = false;
},
mergeItem(model) {
const loading = this.$Loading.show();
this.$ajax.getJSON('/server/api/get_merge_profile_template', {template_name:model.template_name}).then((data) => {
loading.hide();
// console.log(data);
model.profile = data.template;
this.viewModal.model = model;
this.viewModal.show = true;
}).catch((err) => {
loading.hide();
this.$tip.error(`${this.$t('common.error')}: ${err.message || err.err_msg}`);
});
},
saveItem() {
if (this.$refs.detailForm.validate()) {
const model = this.detailModal.model;
......
......@@ -204,36 +204,6 @@ export default {
this.$router.replace('manage');
}
},
// showDeployLog() {
// let application = 'tars';
// let server_name = 'tarslog';
// this.deployModal.model = {
// application: application,
// server_name: server_name,
// patch_id: '',
// patchList: [],
// };
// this.getPatchList(application, server_name, 1, 10).then((data) => {
// this.deployModal.model.patchList = data.rows;
// this.deployModal.show = true;
// // window.setTimeout(() => this.deployModal.show = true, 300)
// });
// },
// doDeployLog() {
// if (this.$refs.deployForm.validate()) {
// this.$ajax.getJSON('/server/api/check_deploy_log', {node_name:this.deployModal.node_name}).then((data) => {
// // console.log(data);
// this.deployModal.model.serverList = data.server;
// this.$refs.publishStatus.savePublishServer(this.deployModal);
// }).catch((err) => {
// this.$tip.error(`${this.$t('deployLog.failed')}: ${err.err_msg || err.message}`);
// });
// }
// },
},
created() {
this.serverData = this.getServerData();
......
......@@ -53,9 +53,9 @@
<h4 v-if="serverNotifyList && showOthers">{{this.$t('serverList.title.serverStatus')}} <i class="icon iconfont" @click="getServerNotifyList()">&#xec08;</i></h4>
<let-table v-if="serverNotifyList && showOthers"
:data="serverNotifyList" stripe :empty-msg="$t('common.nodata')" ref="serverNotifyListLoading">
<let-table-column :title="$t('common.time')" prop="notifytime"></let-table-column>
<let-table-column :title="$t('serverList.table.th.serviceID')" prop="server_id"></let-table-column>
<let-table-column :title="$t('serverList.table.th.threadID')" prop="thread_id"></let-table-column>
<let-table-column width="20%" :title="$t('common.time')" prop="notifytime"></let-table-column>
<let-table-column width="20%" :title="$t('serverList.table.th.serviceID')" prop="server_id"></let-table-column>
<let-table-column width="15%" :title="$t('serverList.table.th.threadID')" prop="thread_id"></let-table-column>
<let-table-column :title="$t('serverList.table.th.result')" prop="result"></let-table-column>
</let-table>
<let-pagination
......
......@@ -408,6 +408,7 @@
"more": "更多命令",
"operates": "操作",
"view": "查看",
"merge": "合并后",
"search": "查询",
"servant": "管理Servant",
"goback": "返回",
......
......@@ -382,6 +382,7 @@
"more": "more",
"operates": "Operates",
"view": "view",
"merge": "merge",
"search": "search",
"servant": "servant",
"goback": "go back",
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment