From 6f3be08169d259b11095c05f8885243735af8f82 Mon Sep 17 00:00:00 2001 From: Karson <karsonzhang@163.com> Date: Tue, 25 Apr 2017 22:08:53 +0800 Subject: [PATCH] 新增版本管理 --- application/admin/controller/Version.php | 25 +++++++++++++++++++++++++ application/admin/lang/zh-cn/version.php | 15 +++++++++++++++ application/admin/view/version/add.html | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ application/admin/view/version/edit.html | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ application/admin/view/version/index.html | 25 +++++++++++++++++++++++++ public/assets/js/backend/version.js | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 239 insertions(+), 0 deletions(-) create mode 100644 application/admin/controller/Version.php create mode 100644 application/admin/lang/zh-cn/version.php create mode 100644 application/admin/view/version/add.html create mode 100644 application/admin/view/version/edit.html create mode 100644 application/admin/view/version/index.html create mode 100644 public/assets/js/backend/version.js diff --git a/application/admin/controller/Version.php b/application/admin/controller/Version.php new file mode 100644 index 0000000..13084c5 --- /dev/null +++ b/application/admin/controller/Version.php @@ -0,0 +1,25 @@ +<?php + +namespace app\admin\controller; + +use app\common\controller\Backend; + +use think\Controller; +use think\Request; + +/** + * 版本管理 + * + * @icon fa fa-circle-o + */ +class Version extends Backend +{ + + protected $model = null; + + public function _initialize() + { + parent::_initialize(); + $this->model = model('Version'); + } +} diff --git a/application/admin/lang/zh-cn/version.php b/application/admin/lang/zh-cn/version.php new file mode 100644 index 0000000..8ed2a5c --- /dev/null +++ b/application/admin/lang/zh-cn/version.php @@ -0,0 +1,15 @@ +<?php + +return [ + 'id' => 'ID', + 'oldversion' => '旧版本号', + 'newversion' => '新版本号', + 'packagesize' => '包大小', + 'content' => '升级内容', + 'downloadurl' => '下载地址', + 'enforce' => '强制更新', + 'createtime' => '创建时间', + 'updatetime' => '更新时间', + 'weigh' => '权重', + 'status' => '状态' +]; diff --git a/application/admin/view/version/add.html b/application/admin/view/version/add.html new file mode 100644 index 0000000..6fc15bc --- /dev/null +++ b/application/admin/view/version/add.html @@ -0,0 +1,58 @@ +<form id="add-form" class="form-horizontal form-ajax" role="form" data-toggle="validator" method="POST" action=""> + + <div class="form-group"> + <label for="c-oldversion" class="control-label col-xs-12 col-sm-2">{:__('Oldversion')}:</label> + <div class="col-xs-12 col-sm-8"> + <input id="c-oldversion" class="form-control" name="row[oldversion]" type="text" value=""> + </div> + </div> + <div class="form-group"> + <label for="c-newversion" class="control-label col-xs-12 col-sm-2">{:__('Newversion')}:</label> + <div class="col-xs-12 col-sm-8"> + <input id="c-newversion" class="form-control" name="row[newversion]" type="text" value=""> + </div> + </div> + <div class="form-group"> + <label for="c-packagesize" class="control-label col-xs-12 col-sm-2">{:__('Packagesize')}:</label> + <div class="col-xs-12 col-sm-8"> + <input id="c-packagesize" class="form-control" name="row[packagesize]" type="text" value=""> + </div> + </div> + <div class="form-group"> + <label for="c-content" class="control-label col-xs-12 col-sm-2">{:__('Content')}:</label> + <div class="col-xs-12 col-sm-8"> + <textarea id="c-content" class="form-control" name="row[content]"></textarea> + </div> + </div> + <div class="form-group"> + <label for="c-downloadurl" class="control-label col-xs-12 col-sm-2">{:__('Downloadurl')}:</label> + <div class="col-xs-12 col-sm-8"> + <input id="c-downloadurl" class="form-control" name="row[downloadurl]" type="text" value=""> + </div> + </div> + <div class="form-group"> + <label for="c-enforce" class="control-label col-xs-12 col-sm-2">{:__('Enforce')}:</label> + <div class="col-xs-12 col-sm-8"> + {:build_radios('row[enforce]', [1=>__('Yes'), 0=>__('No')], 1)} + </div> + </div> + <div class="form-group"> + <label for="c-weigh" class="control-label col-xs-12 col-sm-2">{:__('Weigh')}:</label> + <div class="col-xs-12 col-sm-8"> + <input id="c-weigh" class="form-control" name="row[weigh]" type="number" value="0"> + </div> + </div> + <div class="form-group"> + <label for="c-status" class="control-label col-xs-12 col-sm-2">{:__('Status')}:</label> + <div class="col-xs-12 col-sm-8"> + {:build_radios('row[status]', ['normal'=>__('Normal'), 'hidden'=>__('Hidden')])} + </div> + </div> + <div class="form-group hide layer-footer"> + <label class="control-label col-xs-12 col-sm-2"></label> + <div class="col-xs-12 col-sm-8"> + <button type="submit" class="btn btn-success btn-embossed">{:__('OK')}</button> + <button type="reset" class="btn btn-default btn-embossed">{:__('Reset')}</button> + </div> + </div> +</form> diff --git a/application/admin/view/version/edit.html b/application/admin/view/version/edit.html new file mode 100644 index 0000000..cb295a2 --- /dev/null +++ b/application/admin/view/version/edit.html @@ -0,0 +1,58 @@ +<form id="edit-form" class="form-horizontal form-ajax" role="form" data-toggle="validator" method="POST" action=""> + + <div class="form-group"> + <label for="c-oldversion" class="control-label col-xs-12 col-sm-2">{:__('Oldversion')}:</label> + <div class="col-xs-12 col-sm-8"> + <input id="c-oldversion" class="form-control" name="row[oldversion]" type="text" value="{$row.oldversion}"> + </div> + </div> + <div class="form-group"> + <label for="c-newversion" class="control-label col-xs-12 col-sm-2">{:__('Newversion')}:</label> + <div class="col-xs-12 col-sm-8"> + <input id="c-newversion" class="form-control" name="row[newversion]" type="text" value="{$row.newversion}"> + </div> + </div> + <div class="form-group"> + <label for="c-packagesize" class="control-label col-xs-12 col-sm-2">{:__('Packagesize')}:</label> + <div class="col-xs-12 col-sm-8"> + <input id="c-packagesize" class="form-control" name="row[packagesize]" type="text" value="{$row.packagesize}"> + </div> + </div> + <div class="form-group"> + <label for="c-content" class="control-label col-xs-12 col-sm-2">{:__('Content')}:</label> + <div class="col-xs-12 col-sm-8"> + <textarea id="c-content" class="form-control" name="row[content]">{$row.content}</textarea> + </div> + </div> + <div class="form-group"> + <label for="c-downloadurl" class="control-label col-xs-12 col-sm-2">{:__('Downloadurl')}:</label> + <div class="col-xs-12 col-sm-8"> + <input id="c-downloadurl" class="form-control" name="row[downloadurl]" type="text" value="{$row.downloadurl}"> + </div> + </div> + <div class="form-group"> + <label for="c-enforce" class="control-label col-xs-12 col-sm-2">{:__('Enforce')}:</label> + <div class="col-xs-12 col-sm-8"> + {:build_radios('row[enforce]', [1=>__('Yes'), 0=>__('No')], $row['enforce'])} + </div> + </div> + <div class="form-group"> + <label for="c-weigh" class="control-label col-xs-12 col-sm-2">{:__('Weigh')}:</label> + <div class="col-xs-12 col-sm-8"> + <input id="c-weigh" class="form-control" name="row[weigh]" type="number" value="{$row.weigh}"> + </div> + </div> + <div class="form-group"> + <label for="c-status" class="control-label col-xs-12 col-sm-2">{:__('Status')}:</label> + <div class="col-xs-12 col-sm-8"> + {:build_radios('row[status]', ['normal'=>__('Normal'), 'hidden'=>__('Hidden')], $row['status'])} + </div> + </div> + <div class="form-group hide layer-footer"> + <label class="control-label col-xs-12 col-sm-2"></label> + <div class="col-xs-12 col-sm-8"> + <button type="submit" class="btn btn-success btn-embossed">{:__('OK')}</button> + <button type="reset" class="btn btn-default btn-embossed">{:__('Reset')}</button> + </div> + </div> +</form> diff --git a/application/admin/view/version/index.html b/application/admin/view/version/index.html new file mode 100644 index 0000000..d3eefa4 --- /dev/null +++ b/application/admin/view/version/index.html @@ -0,0 +1,25 @@ +<div class="panel panel-default panel-intro"> + {:build_heading()} + + <div class="panel-body"> + <div id="myTabContent" class="tab-content"> + <div class="tab-pane fade active in" id="one"> + <div class="widget-body no-padding"> + <div id="toolbar" class="toolbar"> + {:build_toolbar()} + <div class="dropdown btn-group"> + <a class="btn btn-primary btn-more dropdown-toggle btn-disabled disabled" data-toggle="dropdown"><i class="fa fa-cog"></i> {:__('More')}</a> + <ul class="dropdown-menu text-left" role="menu"> + <li><a class="btn btn-link btn-multi btn-disabled disabled" href="javascript:;" data-params="status=normal"><i class="fa fa-eye"></i> {:__('Set to normal')}</a></li> + <li><a class="btn btn-link btn-multi btn-disabled disabled" href="javascript:;" data-params="status=hidden"><i class="fa fa-eye-slash"></i> {:__('Set to hidden')}</a></li> + </ul> + </div> + </div> + <table id="table" class="table table-striped table-bordered table-hover" width="100%"> + </table> + </div> + </div> + + </div> + </div> +</div> diff --git a/public/assets/js/backend/version.js b/public/assets/js/backend/version.js new file mode 100644 index 0000000..98aa8dd --- /dev/null +++ b/public/assets/js/backend/version.js @@ -0,0 +1,58 @@ +define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) { + + var Controller = { + index: function () { + // 初始化表格参数配置 + Table.api.init({ + extend: { + index_url: 'version/index', + add_url: 'version/add', + edit_url: 'version/edit', + del_url: 'version/del', + multi_url: 'version/multi', + table: 'version', + } + }); + + var table = $("#table"); + + // 初始化表格 + table.bootstrapTable({ + url: $.fn.bootstrapTable.defaults.extend.index_url, + sortName: 'weigh', + columns: [ + [ + {field: 'state', checkbox: true}, + {field: 'id', title: __('Id')}, + {field: 'oldversion', title: __('Oldversion')}, + {field: 'newversion', title: __('Newversion')}, + {field: 'packagesize', title: __('Packagesize')}, + {field: 'content', title: __('Content')}, + {field: 'downloadurl', title: __('Downloadurl'), formatter: Table.api.formatter.url}, + {field: 'enforce', title: __('Enforce')}, + {field: 'createtime', title: __('Createtime'), formatter: Table.api.formatter.datetime}, + {field: 'updatetime', title: __('Updatetime'), formatter: Table.api.formatter.datetime}, + {field: 'weigh', title: __('Weigh')}, + {field: 'status', title: __('Status'), formatter: Table.api.formatter.status}, + {field: 'operate', title: __('Operate'), events: Table.api.events.operate, formatter: Table.api.formatter.operate} + ] + ] + }); + + // 为表格绑定事件 + Table.api.bindevent(table); + }, + add: function () { + Controller.api.bindevent(); + }, + edit: function () { + Controller.api.bindevent(); + }, + api: { + bindevent: function () { + Form.api.bindevent($("form[role=form]")); + } + } + }; + return Controller; +}); \ No newline at end of file -- libgit2 0.24.0