Skip to content

Commit 706ba8c

Browse files
author
HeLinJiang
committed
Merge pull request #5 from helinjiang/v1.1.0
V1.1.0
2 parents f476d72 + 27d47fd commit 706ba8c

320 files changed

Lines changed: 7513 additions & 6709 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

clientsrc/modules/car_index/add/main.html

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,22 @@
22
<button class="btn btn-success" v-on:click="showModal">
33
新增 <i class="fa fa-plus"></i>
44
</button>
5-
<modal title="新增用户信息" v-on:confirm="saveSubmit">
6-
<he-form action="/admin/car/save" horizontal noactions>
5+
<modal title="新增汽车信息">
6+
<he-form action="/admin/car/add" horizontal noactions>
77
<he-form-item title="汽车名" horizontal>
8-
<input type="text" name="name">
8+
<input type="text" name="name" v-model="name">
99
</he-form-item>
1010
<he-form-item title="车主人" horizontal>
11-
<select2 name="ownerId" url="/admin/user/getdata" convert="searchuser" v-on:select2change="checkOwnerId" lazy v-ref:user></select2>
11+
<select2 name="ownerId" :value.sync="ownerId" url="/admin/user/getdata" convert="searchuser" lazy v-ref:user></select2>
1212
</he-form-item>
1313
<he-form-item title="状态" horizontal>
14-
<select2 name="state" value="1">
14+
<select2 name="state" :value.sync="state">
1515
<select2-option title="有效" value="1"></select2-option>
1616
<select2-option title="无效" value="-1"></select2-option>
1717
</select2>
1818
</he-form-item>
1919
<he-form-item title="购买日期" horizontal>
20-
<date name="buydate" value="2015-12-12"></date>
20+
<date name="buydate" :value.sync="buydate"></date>
2121
</he-form-item>
2222
</he-form>
2323
</modal>
Lines changed: 37 additions & 80 deletions
Original file line numberDiff line numberDiff line change
@@ -1,88 +1,45 @@
1-
var Vue = require('lib/vue');
1+
var CommonCrud = require('common/crud');
22

3-
var validator = require('common/validator');
4-
var Msg = require('/modules/widget/msg/main');
5-
6-
module.exports = Vue.extend({
3+
module.exports = CommonCrud.extend({
74
template: __inline('main.html'),
8-
data: function() {
9-
return {
10-
jqForm: undefined
11-
};
5+
data: {
6+
name: undefined,
7+
ownerId: undefined,
8+
buydate: undefined,
9+
state: undefined,
1210
},
1311
methods: {
14-
showModal: function() {
15-
this._reset();
16-
this.$refs.user.init();
17-
18-
this.$children[0].show();
19-
},
20-
hideModal: function() {
21-
this.$children[0].hide();
22-
},
23-
reportSuccess: function(data) {
24-
this.$dispatch('savesuccess', data);
25-
},
26-
saveSubmit: function(msg) {
27-
// 提交表单
28-
this.jqForm.submit();
29-
},
30-
checkOwnerId: function(name) {
31-
this.jqForm.valid();
12+
beforeShowModal: function() {
13+
this.name = '';
14+
this.ownerId = undefined;
15+
this.buydate = '2016-02-25'; // TODO today
16+
this.state = '1';
17+
18+
this.$refs.user.init();
3219
},
33-
_reset: function() {
34-
// TODO select2 的初始化
35-
$('[name="name"]', this.jqForm).val('');
36-
}
37-
},
38-
ready: function() {
39-
// 缓存该值,避免重复获取
40-
this.$set('jqForm', $('form', $(this.$el)));
41-
42-
_init(this);
43-
}
44-
});
45-
46-
function _init(vm) {
47-
$(function() {
48-
handleValidator(vm);
49-
});
50-
}
51-
52-
53-
function handleValidator(vm) {
54-
validator.check(vm.jqForm, {
55-
name: {
56-
required: {
57-
rule: true,
58-
message: '汽车名字不能为空!'
59-
}
60-
},
61-
ownerId: {
62-
required: {
63-
rule: true,
64-
message: '车主人不能为空!'
65-
}
66-
}
67-
}, {
68-
submitHandler: function(form) {
69-
$(form).ajaxSubmit({
70-
success: function(responseText, statusText) {
71-
if (statusText !== 'success' || responseText.errno !== 0) {
72-
// 提示失败
73-
Msg.error('保存' + JSON.stringify(responseText.data) + '出错!');
74-
} else {
75-
// 提示成功
76-
Msg.success('保存' + JSON.stringify(responseText.data) + '成功!');
77-
78-
// 关闭对话框
79-
vm.hideModal();
80-
81-
// 刷新列表
82-
vm.reportSuccess(responseText.data);
20+
getValidatorConfig: function() {
21+
var config = {
22+
name: {
23+
required: {
24+
rule: true,
25+
message: '汽车名字不能为空!'
26+
}
27+
},
28+
ownerId: {
29+
required: {
30+
rule: true,
31+
message: '车主人不能为空!'
32+
}
33+
},
34+
buydate: {
35+
required: {
36+
rule: true,
37+
message: '生日不能为空!'
8338
}
8439
}
85-
});
40+
};
41+
42+
return config;
8643
}
87-
});
88-
}
44+
}
45+
});

clientsrc/modules/car_index/delete/main.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<div class="deletepage">
2-
<modal title="删除用户信息" v-on:confirm="saveSubmit">
2+
<modal title="删除汽车信息">
33
<div class="alert alert-warning alert-dismissable">
44
<button type="button" class="close" data-dismiss="alert" aria-hidden="true"></button>
55
<strong>Warning!</strong> 请确定是否删除,一旦删除,数据将无法恢复!
Lines changed: 14 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,21 @@
1-
var Vue = require('lib/vue');
1+
var CommonCrud = require('common/crud');
22

3-
var validator = require('common/validator');
4-
var Msg = require('/modules/widget/msg/main');
5-
6-
module.exports = Vue.extend({
3+
module.exports = CommonCrud.extend({
74
template: __inline('main.html'),
8-
data: function() {
9-
return {
10-
id: undefined,
11-
items: []
12-
};
5+
data: {
6+
id: undefined,
7+
items: []
138
},
149
methods: {
15-
showModal: function(data) {
10+
beforeShowModal: function(data) {
11+
if (!data || !data.id) {
12+
return;
13+
}
14+
15+
// 设置要删除的记录的id
1616
this.id = data.id;
1717

18+
// 设置要展示的信息条目
1819
this.items = [{
1920
key: 'id',
2021
value: data.id,
@@ -36,39 +37,15 @@ module.exports = Vue.extend({
3637
value: data.stateShow,
3738
title: '状态'
3839
}];
39-
40-
this.$children[0].show();
41-
},
42-
hideModal: function() {
43-
this.$children[0].hide();
44-
},
45-
reportSuccess: function(data) {
46-
this.$dispatch('savesuccess', data);
4740
},
48-
saveSubmit: function(msg) {
41+
triggerSubmit: function() {
4942
var self = this;
5043

5144
$.post('/admin/car/delete', {
5245
id: this.id
5346
}, function(responseText, statusText) {
54-
console.log(responseText, statusText);
55-
if (statusText !== 'success' || responseText.errno !== 0) {
56-
// 提示失败
57-
Msg.error('删除' + JSON.stringify(responseText.data) + '出错!');
58-
} else {
59-
// 提示成功
60-
Msg.success('删除' + JSON.stringify(responseText.data) + '成功!');
61-
62-
// 关闭对话框
63-
self.hideModal();
64-
65-
// 刷新列表
66-
self.reportSuccess(responseText.data);
67-
}
47+
self.dealSuccessRes(responseText, statusText);
6848
});
6949
}
70-
},
71-
ready: function() {
72-
7350
}
7451
});
File renamed without changes.

clientsrc/modules/car_index/detail/main.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<div class="deletepage">
2-
<modal title="用户信息详情" v-on:confirm="hideModal">
2+
<modal title="汽车信息详情">
33
<table class="table table-bordered">
44
<tr v-for="item in items">
55
<th>{{ item.title}}</th>
Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,18 @@
1-
var Vue = require('lib/vue');
1+
var CommonCrud = require('common/crud');
22

3-
var validator = require('common/validator');
4-
var Msg = require('/modules/widget/msg/main');
3+
var Names = require('common/names');
54

6-
module.exports = Vue.extend({
5+
module.exports = CommonCrud.extend({
76
template: __inline('main.html'),
8-
data: function() {
9-
return {
10-
items: []
11-
};
7+
data: {
8+
items: []
129
},
1310
methods: {
14-
showModal: function(data) {
11+
beforeShowModal: function(data) {
12+
if (!data) {
13+
return;
14+
}
15+
1516
this.items = [{
1617
key: 'id',
1718
value: data.id,
@@ -33,14 +34,9 @@ module.exports = Vue.extend({
3334
value: data.stateShow,
3435
title: '状态'
3536
}];
36-
37-
this.$children[0].show();
3837
},
39-
hideModal: function() {
40-
this.$children[0].hide();
38+
triggerSubmit: function() {
39+
this.hideModal();
4140
}
42-
},
43-
ready: function() {
44-
4541
}
4642
});
File renamed without changes.
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<div class="user_index-main">
2+
3+
<admin-main-toolbar>
4+
<add v-on:savesuccess="reloadDataGrid"></add>
5+
<modify v-ref:modify v-on:savesuccess="reloadDataGrid"></modify>
6+
<delete v-ref:delete v-on:savesuccess="reloadDataGrid"></delete>
7+
<detail v-ref:detail></detail>
8+
</admin-main-toolbar>
9+
10+
<portlet title="用户列表" icon="globe">
11+
<datagrid url="/admin/car/getdata" pagelength="4" type="server" v-on:click="operate" v-ref:datagrid>
12+
<datagrid-item name="id" title="ID"></datagrid-item>
13+
<datagrid-item name="user_name" title="车主人"></datagrid-item>
14+
<datagrid-item name="name" title="汽车名字"></datagrid-item>
15+
<datagrid-item name="buydate" title="购买日期"></datagrid-item>
16+
<datagrid-item name="stateShow" title="状态"></datagrid-item>
17+
<datagrid-item name="id" title="操作" render="commonOperate | detail modify delete" disableorder></datagrid-item>
18+
</datagrid>
19+
</portlet>
20+
21+
</div>

0 commit comments

Comments
 (0)