Skip to content

Commit 568e022

Browse files
committed
question has done
1 parent f77ddf9 commit 568e022

File tree

5 files changed

+191
-47
lines changed

5 files changed

+191
-47
lines changed

public/css/admin.css

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,20 +17,21 @@
1717
#main{
1818
border: 1px solid #d7d7d7;
1919
border-radius: 3px;
20+
background: #fff;
2021
}
2122
.content{
2223
width: 100%;
2324
float: left;
2425
}
2526
.main{
2627
margin-left: 200px;
27-
height: 500px;
2828
background:#fff;
2929
padding: 20px;
3030
}
3131
.sideleft{
3232
float: left;
3333
margin-left: -100%;
34+
background:#f7f7f7;
3435
}
3536
/*日期*/
3637
.notice-date{
@@ -47,4 +48,8 @@
4748
.status-over{
4849
background-color:#dce7bf;
4950
color:#bdb76a;
51+
}
52+
/*问题区域*/
53+
.q{
54+
width: 380px;
5055
}

routes/admin/notice.js

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,13 @@ exports.index = function(req,res){
111111
res.render('./admin/link',renderData);
112112
}
113113
}else if(req.method == 'POST'){
114+
if(!!req.query.del){//删除
115+
jixiang.delById(id,'links',function(err){
116+
if(err)return res.json({flg:0,msg:err});
117+
return res.json({flg:1,msg:'删除成功!'});
118+
});
119+
return;
120+
}
114121
var website = {
115122
name : req.body.website
116123
,url : req.body.url
@@ -133,13 +140,6 @@ exports.index = function(req,res){
133140
if(err)return res.json({flg:0,msg:err});
134141
return res.json({flg:1,msg:'修改成功'});
135142
});
136-
}else{//删除
137-
var del = parseInt(req.query.del,10) || 0;
138-
if(del===0)return;
139-
jixiang.delById(id,'links',function(err){
140-
if(err)return res.json({flg:0,msg:err});
141-
return res.json({flg:1,msg:'删除成功!'});
142-
});
143143
}
144144

145145
}

routes/admin/question.js

Lines changed: 93 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -8,22 +8,101 @@ var config = require('../../config')
88
exports.index = function(req,res){
99
var add = parseInt(req.query.add,10) || 0
1010
,info = parseInt(req.query.info,10) || 0;
11-
11+
var id = parseInt(req.query.id,10) || 0;
1212
if(req.method == 'GET'){
1313
var template = 1;
1414
var result = {};
1515
if(add !==0){ //添加问题
1616
template = 2;
17+
jixiang.get({},'qcat',function(err,doc){
18+
if(err)doc=[];
19+
result.cat = doc;
20+
render();
21+
});
22+
return;
1723
}else if(info !== 0){//查看&修改问题
1824
template = 3;
25+
var n = 2;
26+
jixiang.getOne({_id:id},'qa',function(err,doc){
27+
if(err)doc=[];
28+
result.qa = doc;
29+
--n || render();
30+
})
31+
jixiang.get({},'qcat',function(err,doc){
32+
if(err)doc=[];
33+
result.cat = doc;
34+
--n || render();
35+
});
36+
return;
1937
}
20-
res.render('./admin/question',{
21-
title : config.name + '问题管理'
22-
,user : req.session.user
23-
,template : template
38+
jixiang.count({},'qa',function(err,count){
39+
if(err)return res.json({flg:0,msg:err});
40+
// 分页
41+
var pages = parseInt(req.query.page,10) || 1;
42+
var condition = {
43+
skip : (pages-1)*7
44+
,limit : 7
45+
}
46+
var pageNum = {
47+
max : Math.ceil(count/7) ? Math.ceil(count/7) : 1
48+
,cur : pages
49+
,next : pages+1
50+
,prev : pages-1
51+
}
52+
if(pageNum.cur > pageNum.max)return;
53+
54+
jixiang.get({},'qa',function(err,doc){
55+
if(err)doc=[];
56+
result.qa = doc;
57+
render(pageNum);
58+
});
2459
});
25-
}if(req.method == 'POST'){
2660

61+
function render(){
62+
var renderData = {
63+
title : config.name + '问题管理'
64+
,user : req.session.user
65+
,template : template
66+
,result : result
67+
}
68+
if(arguments.length){
69+
renderData.pages = arguments[0];
70+
renderData.pagenav = '/admin/question?';
71+
}
72+
res.render('./admin/question',renderData);
73+
}
74+
}if(req.method == 'POST'){
75+
if(!!req.query.del){
76+
jixiang.delById(id,'qa',function(err){
77+
if(err)return res.json({flg:0,msg:err});
78+
return res.json({flg:1,msg:'删除成功!'});
79+
});
80+
return;
81+
}
82+
var qdata = {
83+
q : req.body.question.trim()
84+
,a : req.body.answer.trim()
85+
,catCat : req.body.catCat || ''
86+
,catChapter : req.body.catChapter || ''
87+
,catTopic : req.body.catTopic || ''
88+
}
89+
if(add !==0){ //增加问题
90+
jixiang.save(qdata,'qa',function(err,doc){
91+
if(err)return res.json({flg:0,msg:err});
92+
return res.json({flg:1,msg:'增加成功!',redirect:'/admin/question'});
93+
});
94+
}else if(info !==0){
95+
if(!id)return;
96+
jixiang.update({
97+
query : {
98+
_id : id
99+
},
100+
modify : qdata
101+
},'qa',function(err){
102+
if(err)return res.json({flg:0,msg:err});
103+
return res.json({flg:1,msg:'修改成功'});
104+
});
105+
}
27106
}
28107
}
29108

@@ -32,19 +111,17 @@ exports.cat = function(req,res){
32111
,add = parseInt(req.query.add,10) || 0
33112
,modify = parseInt(req.query.modify,10) || 0
34113
,catArray = ['','分类','章节','专题'];
35-
114+
var id = parseInt(req.query.id,10) || 0;
36115
if(req.method == 'GET'){
37116
var template = 1;
38117
if(add !==0){//增加
39118
template = 2;
40119
render();
41120
}else if(modify !== 0){//修改
42121
template = 3;
43-
var id = parseInt(req.query.id,10) || 0;
44122
if(!id)return;
45123
jixiang.getOne({_id:id},'qcat',function(err,doc){
46124
if(err)doc=[];
47-
console.log(doc)
48125
render(doc);
49126
});
50127
return;
@@ -71,6 +148,13 @@ exports.cat = function(req,res){
71148
}
72149

73150
}else if(req.method =='POST'){
151+
if(!!req.query.del){
152+
jixiang.delById(id,'qcat',function(err){
153+
if(err)return res.json({flg:0,msg:err});
154+
return res.json({flg:1,msg:'删除成功!'});
155+
});
156+
return;
157+
}
74158
var catData = {
75159
cat : cat
76160
,name : req.body.catname.trim()
@@ -82,7 +166,6 @@ exports.cat = function(req,res){
82166
return res.json({flg:1,msg:'新增成功!',redirect:'/admin/question/cat?cat='+cat});
83167
});
84168
}else if(modify !==0){//修改
85-
var id = parseInt(req.query.id,10) || 0;
86169
if(!id)return;
87170
jixiang.update({
88171
query : {
@@ -93,13 +176,6 @@ exports.cat = function(req,res){
93176
if(err)return res.json({flg:0,msg:err});
94177
return res.json({flg:1,msg:'修改成功'});
95178
});
96-
}else{
97-
var del = parseInt(req.query.del,10) || 0;
98-
if(del===0)return;
99-
jixiang.delById(id,'qcat',function(err){
100-
if(err)return res.json({flg:0,msg:err});
101-
return res.json({flg:1,msg:'删除成功!'});
102-
});
103179
}
104180
}
105181
}

views/admin/qcat.jade

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ extends layout/layout
22
block content
33
//内容区
44
.main
5+
//列表
56
if template === 1
67
table.table.order-table
78
caption #{catName}列表
@@ -26,6 +27,7 @@ block content
2627
tr
2728
td(colspan="3") 没有#{catName}信息
2829
a(href="/admin/question/cat?cat=#{cat}&add=1") 点击添加#{catName}
30+
//增加新纪录
2931
if template === 2
3032
form.form-inline.ajax-form(action="/admin/question/cat?cat=#{cat}&add=1",method="post")
3133
table.table.order-table
@@ -48,8 +50,9 @@ block content
4850
td
4951
td.aleft
5052
button.btn(type="submit") 增加
53+
//修改记录
5154
if template === 3
52-
form.form-inline.ajax-form(action="/admin/question/cat?cat=#{cat}&modify=1",method="post")
55+
form.form-inline.ajax-form(action="/admin/question/cat?cat=#{cat}&modify=1&id=#{doc._id}",method="post")
5356
table.table.order-table
5457
caption.bread
5558
a.parent(href="/admin/question/cat?cat=#{cat}") #{catName}列表

views/admin/question.jade

Lines changed: 81 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ extends layout/layout
22
block content
33
//内容区
44
.main
5+
//问题列表
56
if template === 1
67
table.table.order-table
78
caption 问题列表
@@ -10,25 +11,34 @@ block content
1011
tr.separate
1112
th(colspan="5")
1213
tr
13-
th 分类
1414
th 问题
15+
th 分类
1516
th 章节
1617
th 专题
1718
th 操作
1819
tbody
20+
if !!result.qa && result.qa.length
21+
each item in result.qa
22+
-var catCat = item.catCat || '',catChapter = item.catChapter || '',catTopic = item.catTopic || '';
23+
tr
24+
td.q= item.q
25+
td= catCat
26+
td= catChapter
27+
td= catTopic
28+
td
29+
a.btn-reply(href="/admin/question?info=1&id=#{item._id}") 查看
30+
a.btn-reply.btn-del(href="/admin/question?del=1&id=#{item._id}") 删除
31+
else
1932
tr
20-
td JavaScript
21-
td JS就是Java吗?
22-
td 第六章
23-
td 大话javascript
24-
td
25-
a.btn-reply(href="#") 查看
26-
a.btn-reply.btn-del(href="#") 删除
33+
td(colspan='5') 还没有问题,
34+
a(href="/admin/question?add=1") 点击这里添加问题
35+
include ../layout/pagenav
36+
//添加新问题
2737
if template === 2
2838
form.form-inline.ajax-form(action="/admin/question?add=1",method="post")
2939
table.table.order-table
3040
caption.bread
31-
a.parent(href="/admin/link") 问题列表
41+
a.parent(href="/admin/question") 问题列表
3242
a  » 增加新问题
3343
thead.tab-title
3444
tr.separate
@@ -37,30 +47,80 @@ block content
3747
tr
3848
td 问题
3949
td.aleft
40-
input#website(type="text",name="website")
50+
input#question(type="text",name="question")
51+
-var catArray = {catCat:{name:'分类',is:1,cat:1},catChapter:{name:'章节',is:1,cat:2},catTopic:{name:'专题',is:1,cat:3} };
52+
-for(key in catArray)
53+
tr
54+
td=catArray[key].name
55+
td.aleft
56+
if !!result.cat && result.cat.length
57+
-var list='';
58+
each item in result.cat
59+
if item.cat === catArray[key].cat
60+
-list += '<option value="'+item.name+'">'+item.name+'</option>';
61+
if !!list
62+
select(name=key)
63+
!{list}
64+
else
65+
| 还没有#{catArray[key].name}
66+
a(href="/admin/question/cat?cat=#{catArray[key].cat}&add=") 点击这里添加#{catArray[key].name}
67+
else
68+
| 还没有#{catArray[key].name}
69+
a(href="/admin/question/cat?cat=#{catArray[key].cat}&add=") 点击这里添加#{catArray[key].name}
4170
tr
42-
td 分类
71+
td 解答
4372
td.aleft
44-
select
45-
option xx
73+
textarea(style="width:270px;height:100px;",name="answer")
4674
tr
47-
td 章节
75+
td
4876
td.aleft
49-
select
50-
option xx
77+
button.btn(type="submit") 增加
78+
//查看&&修改问题
79+
if template === 3
80+
form.form-inline.ajax-form(action="/admin/question?info=1&id=#{result.qa._id}",method="post")
81+
table.table.order-table
82+
caption.bread
83+
a.parent(href="/admin/question") 问题列表
84+
a &nbsp;»&nbsp;修改新问题
85+
thead.tab-title
86+
tr.separate
87+
th(colspan="2")
88+
tbody
5189
tr
52-
td 专题
90+
td 问题
5391
td.aleft
54-
select
55-
option xx
92+
input#question(type="text",name="question",value="#{result.qa.q}")
93+
-var catArray = {catCat:{name:'分类',is:1,cat:1},catChapter:{name:'章节',is:1,cat:2},catTopic:{name:'专题',is:1,cat:3} };
94+
-for(key in catArray)
95+
tr
96+
td=catArray[key].name
97+
td.aleft
98+
if !!result.cat && result.cat.length
99+
-var list='';
100+
each item in result.cat
101+
if item.cat === catArray[key].cat
102+
if item.name === result.qa[key]
103+
-list +='<option selected'
104+
else
105+
-list +='<option'
106+
-list += ' value="'+item.name+'">'+item.name+'</option>';
107+
if !!list
108+
select(name=key)
109+
!{list}
110+
else
111+
| 还没有#{catArray[key].name}
112+
a(href="/admin/question/cat?cat=#{catArray[key].cat}&add=") 点击这里添加#{catArray[key].name}
113+
else
114+
| 还没有#{catArray[key].name}
115+
a(href="/admin/question/cat?cat=#{catArray[key].cat}&add=") 点击这里添加#{catArray[key].name}
56116
tr
57117
td 解答
58118
td.aleft
59-
textarea(style="width:270px;height:100px;",name="description")
119+
textarea(style="width:270px;height:100px;",name="answer")=result.qa.a
60120
tr
61121
td
62122
td.aleft
63-
button.btn(type="submit") 增加
123+
button.btn(type="submit") 修改
64124

65125

66126

0 commit comments

Comments
 (0)