fees_db.js 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. /**
  2. * Created by CSL on 2017-03-29.
  3. */
  4. var mg = require('mongoose');
  5. var dbm = require("../../../config/db/db_manager");
  6. var umDB = dbm.getCfgConnection("projectFees");
  7. var ratesSchema = new mg.Schema({
  8. ID: Number,
  9. ParentID: Number,
  10. name: String,
  11. rate: Number,
  12. memo: String
  13. });
  14. var feeRatesSchema = new mg.Schema({
  15. ID: Number,
  16. libID: Number,
  17. libName: String,
  18. rates: [ratesSchema]
  19. });
  20. var feeRatesModel = umDB.model('feeRates', feeRatesSchema, 'feeRates');
  21. var FeeRateFile = function(){};
  22. FeeRateFile.prototype.rates = function(fileID, controllerFun){
  23. feeRatesModel.find({"ID": fileID}, ["rates"], function(err, data){
  24. if(data.length){
  25. controllerFun(data);
  26. }
  27. else{
  28. controllerFun(false);
  29. }
  30. })
  31. };
  32. // 1 保存成功; 0 保存失败;-1没有找到对应记录。
  33. FeeRateFile.prototype.updateRate = function(rateObj, controllerFun){
  34. feeRatesModel.find({"ID": rateObj.fileID}, ["rates"], function(err, data){
  35. if(data.length){
  36. for (var i = 0; i < data[0].rates.length; i++) {
  37. if (data[0].rates[i].ID == rateObj.rateID) {
  38. data[0].rates[i].rate = rateObj.rateValue;
  39. data[0].save(function (err) {
  40. if (err) { controllerFun(0); } else { controllerFun(1); }
  41. });
  42. break;
  43. }
  44. };
  45. }
  46. else{ controllerFun(-1); }
  47. })
  48. };
  49. module.exports = new FeeRateFile();