174 lines
6.0 KiB
JavaScript
174 lines
6.0 KiB
JavaScript
/**
|
|
* Created by strawmanbobi
|
|
* 2020-05-07
|
|
*/
|
|
|
|
// global inclusion
|
|
var orm = require('orm');
|
|
var dbOrm = require('../mini_poem/db/mysql/mysql_connection').mysqlDB;
|
|
var logger = require('../mini_poem/logging/logger4js').helper;
|
|
|
|
// local inclusion
|
|
var ErrorCode = require('../constants/error_code');
|
|
var Enums = require('../constants/enums');
|
|
|
|
var errorCode = new ErrorCode();
|
|
var enums = new Enums();
|
|
|
|
var CollectRemote = dbOrm.define('collect_remote',
|
|
{
|
|
id: Number,
|
|
name: String,
|
|
category_id: Number,
|
|
category_name: String,
|
|
brand_id: Number,
|
|
brand_name: String,
|
|
city_code: String,
|
|
city_name: String,
|
|
operator_id: Number,
|
|
operator_name: String,
|
|
protocol: String,
|
|
remote: String,
|
|
remote_map: String,
|
|
status: Number,
|
|
update_time: String,
|
|
contributor: String,
|
|
},
|
|
{
|
|
cache: true
|
|
}
|
|
);
|
|
|
|
CollectRemote.createCollectRemote = function(collectRemote, callback) {
|
|
var date = dateUtils.formatDate(new Date(), "yyyy-MM-dd hh:mm:ss");
|
|
var newCollectRemote = new CollectRemote({
|
|
name: collectRemote.name,
|
|
category_id: collectRemote.category_id,
|
|
category_name: collectRemote.category_name,
|
|
brand_id: collectRemote.brand_id,
|
|
brand_name: collectRemote.brand_name,
|
|
city_code: collectRemote.city_code,
|
|
city_name: collectRemote.city_name,
|
|
operator_id: collectRemote.operator_id,
|
|
operator_name: collectRemote.operator_name,
|
|
protocol: collectRemote.protocol,
|
|
remote: collectRemote.remote,
|
|
remote_map: collectRemote.remote_map,
|
|
status: enums.COLLECT_REMOTE_STATUS_INIT,
|
|
update_time: date,
|
|
contributor: collectRemote.contributor,
|
|
});
|
|
newCollectRemote.save(function(error, createdCollectRemote) {
|
|
if(error) {
|
|
logger.error('failed to create collectRemote : ' + error);
|
|
callback(errorCode.FAILED, null);
|
|
} else {
|
|
callback(errorCode.SUCCESS, createdCollectRemote);
|
|
}
|
|
});
|
|
};
|
|
|
|
CollectRemote.deleteCollectRemote = function(collectRemoteID, callback) {
|
|
CollectRemote.get(collectRemoteID, function (err, collectRemote) {
|
|
if (null !== collectRemote) {
|
|
collectRemote.remove(function (err) {
|
|
if(err) {
|
|
logger.error('failed to remove collectRemote ' + collectRemoteID);
|
|
callback(errorCode.FAILED);
|
|
} else {
|
|
callback(errorCode.SUCCESS);
|
|
}
|
|
});
|
|
} else {
|
|
logger.error('remove collectRemote successfully ' + collectRemoteID);
|
|
callback(errorCode.SUCCESS);
|
|
}
|
|
});
|
|
};
|
|
|
|
CollectRemote.findCollectRemotesByCondition = function(conditions, callback) {
|
|
CollectRemote.find(conditions)
|
|
.run(function (error, collectRemotes) {
|
|
if (error) {
|
|
logger.error("find collectRemote error : " + error);
|
|
callback(errorCode.FAILED, null);
|
|
} else {
|
|
callback(errorCode.SUCCESS, collectRemotes);
|
|
}
|
|
});
|
|
};
|
|
|
|
CollectRemote.listCollectRemotes = function(conditions, from, count, sortField, callback) {
|
|
if("id" === sortField && 0 !== from) {
|
|
conditions.id = orm.lt(from);
|
|
CollectRemote.find(conditions).limit(parseInt(count)).orderRaw("?? DESC", [sortField])
|
|
.run(function (listCollectRemotesErr, collectRemotes) {
|
|
if (listCollectRemotesErr) {
|
|
logger.error("list collectRemotes error : " + listCollectRemotesErr);
|
|
callback(errorCode.FAILED, null);
|
|
} else {
|
|
callback(errorCode.SUCCESS, collectRemotes);
|
|
}
|
|
});
|
|
} else {
|
|
CollectRemote.find(conditions).limit(parseInt(count)).offset(parseInt(from)).orderRaw("?? ASC", [sortField])
|
|
.run(function (listCollectRemotesErr, collectRemotes) {
|
|
if (listCollectRemotesErr) {
|
|
logger.error("list remoteIndexes error : " + listCollectRemotesErr);
|
|
callback(errorCode.FAILED, null);
|
|
} else {
|
|
callback(errorCode.SUCCESS, collectRemotes);
|
|
}
|
|
});
|
|
}
|
|
};
|
|
|
|
CollectRemote.countCollectRemotes = function(conditions, callback) {
|
|
CollectRemote.count(conditions, function(countCollectRemotesErr, collectRemotesCount) {
|
|
if (countCollectRemotesErr) {
|
|
logger.error("count collectRemotes error : " + countCollectRemotesErr);
|
|
callback(errorCode.FAILED, 0);
|
|
} else {
|
|
callback(errorCode.SUCCESS, collectRemotesCount);
|
|
}
|
|
});
|
|
};
|
|
|
|
CollectRemote.getCollectRemoteByID = function(collectRemoteID, callback) {
|
|
CollectRemote.get(collectRemoteID, function(error, collectRemote) {
|
|
if (error) {
|
|
logger.error("get collectRemote by ID error : " + error);
|
|
callback(errorCode.FAILED, null);
|
|
} else {
|
|
callback(errorCode.SUCCESS, collectRemote);
|
|
}
|
|
});
|
|
};
|
|
|
|
CollectRemote.updateCollectRemote = function(collectRemoteID, newCollectRemote, callback) {
|
|
CollectRemote.get(collectRemoteID, function(error, collectRemote) {
|
|
if (error) {
|
|
logger.error("get collectRemote by ID error in update collectRemote : " + error);
|
|
callback(errorCode.FAILED, null);
|
|
} else {
|
|
logger.info("get collectRemote by ID successfully in update collectRemote");
|
|
|
|
for (var prop in collectRemote) {
|
|
if (undefined !== newCollectRemote[prop] && null !== newCollectRemote[prop]) {
|
|
collectRemote[prop] = newCollectRemote[prop];
|
|
}
|
|
}
|
|
|
|
collectRemote.save(function(error, updatedCollectRemote) {
|
|
if(error) {
|
|
logger.error('failed to update collectRemote : ' + error);
|
|
callback(errorCode.FAILED, null);
|
|
} else {
|
|
callback(errorCode.SUCCESS, updatedCollectRemote);
|
|
}
|
|
});
|
|
}
|
|
});
|
|
};
|
|
|
|
module.exports = CollectRemote; |