Skip to content

Instantly share code, notes, and snippets.

@leonguyen
Last active August 29, 2015 13:56
Show Gist options
  • Select an option

  • Save leonguyen/9318235 to your computer and use it in GitHub Desktop.

Select an option

Save leonguyen/9318235 to your computer and use it in GitHub Desktop.
ad_tpl
/*
* GET admin awb page.
*/
var _this = this,
prefix = 'sint_',
tbl = 'al', id = 'aId',
control = 'ad_awb';
var search = '';
exports.index = function(req, res) {
delete req.session.search;
search = {
per_page: '10',
sort: '',
};
_this._showlist(req, res);
};
exports.search = function(req, res) {
search['per_page'] = req.body.selLimit?req.body.selLimit:10;
if(req.method.toLowerCase()=='post'){
search['name'] = req.body.txtName;
req.session.search = search;
}
_this._showlist(req, res);
};
exports._showlist = function(req, res) {
if(req.session.search) search = req.session.search;
//Where
if(search['uName']){
var where = " WHERE uName LIKE " + conn.escape('%'+search['name']+'%');
}
//Sort
var sort = search['sort'];
if(req.query.uName)
sort = ' ORDER BY uName ' + req.query.uName;
if(sort){
search['sort'] = sort;
req.session.search = search;
}
var total = 0;
var query = conn.query("SELECT count("+id+") AS total FROM `" + prefix + tbl + "`" + where, function(err, rows){
if(err) { console.log(query.sql); console.log(err);}
total = req.session.sch_total!=undefined?req.session.sch_total:rows[0].total;
});
var cur_page = req.query.page || 1;
var per_page = search['per_page'];
var start_idx = (cur_page - 1) * per_page;
var query = conn.query("SELECT * FROM `" + prefix + tbl + "`" + where + sort + " LIMIT " + start_idx + "," + per_page, function(err, rows){
if(err) { console.log(query.sql); console.log(err);}
var pg = paging.create('search', {prelink:'/' + control + '/search?page=', current: cur_page, rowsPerPage: per_page, totalResult: total});
res.render(control+'/list', {
title: 'AWB List',
control: control,
mlist: rows,
pg: pg.getPaginationData(),
success_msg: req.flash('success_msg'),
error_msg: req.flash('error_msg')
});
});
};
exports.create = function(req, res){
res.render(control + '/frm', {
title: 'Air Waybill',
control: control,
success_msg: req.flash('success_msg'),
});
};
exports.edit = function(req, res) {
var query = conn.query("SELECT * FROM `" + prefix + tbl + "`" + " WHERE cId=" + conn.escape(req.params.id), function(err, rows){
if(err) { console.log(query.sql); console.log(err);}
res.render(control + '/frm', {
title: 'Air Waybill',
control: control,
mr: rows[0],
success_msg: req.flash('success_msg'),
});
});
};
exports.chkCode = function(req, res) {
var id = req.params.id; //console.log(id);
if(id==0){
var query = conn.query("SELECT * FROM `" + prefix + tbl + "`" + " WHERE cCode=" + conn.escape(req.body.txtCode), function(err, rows){
if(err) { console.log(query.sql); console.log(err);}
if(rows.length==0){
res.send('1');
} else {
res.send('{ "error": "The Code is exist." }');
}
});
} else {
var query = conn.query("SELECT * FROM `" + prefix + tbl + "`" + " WHERE cCode=" + conn.escape(req.body.txtCode) + " AND cId<>" + id, function(err, rows){
if(err) { console.log(query.sql); console.log(err);}
if(rows.length==0){
res.send('1');
} else {
res.send('{ "error": "The Code is exist." }');
}
});
}
};
exports.save = function(req, res) {
var id = req.body.hdId;
var save = req.body.hdSave;
var set = {
cCode: req.body.txtCode,
}
if(!id){
var query = conn.query("INSERT INTO `" + prefix + tbl + "`" + " SET ?", set, function(err, results, fields) {
if(err) { console.log(query.sql); console.log(err);}
id = results.insertId;
req.flash('success_msg', 'The data has been added.');
if(save=='add')
res.redirect('/' + control + '/create');
else if(save=='list')
res.redirect('/' + control + '/');
else
res.redirect('/' + control + '/edit/' + id);
});
} else {
var query = conn.query("UPDATE `" + prefix + tbl + "`" + " SET ? " + " WHERE cId=" + id, set, function (err, results, fields) {
if(err) { console.log(query.sql); console.log(err);}
req.flash('success_msg', 'The changes have been saved.');
if(save=='add')
res.redirect('/' + control + '/create');
else if(save=='list')
res.redirect('/' + control + '/');
else
res.redirect('/' + control + '/edit/' + id);
});
}//if id
};
exports.delete = function(req, res) {
_this._delete(req.params.id);
req.flash('success_msg', 'The data has been deleted.');
res.redirect('/' + control + '/');
};
exports._delete = function(id) {
var query = conn.query("DELETE FROM `" + prefix + tbl + "`" + " WHERE cId=" + conn.escape(id), function (err, results, fields) {
if(err) { console.log(query.sql); console.log(err);}
});
};
exports.update = function(req, res){
var chk = req.body.chkId;
var sel = req.body.selUpd;
for(i=0; i<chk.length; i++){
if(sel == 'del'){
_this._delete(chk[i]);
req.flash('success_msg', 'The data has been deleted.');
res.redirect('/' + control + '/');
}
}
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment