Built motion from commit 12b39f1.|0.0.105
[motion.git] / server / api / custom_report / custom_report.controller.js
index abb7d2b..94a09e5 100644 (file)
@@ -1,160 +1 @@
-'use strict';
-
-var _ = require('lodash');
-var util = require('util');
-var CustomReport = require('../../models').CustomReport;
-var ReportTree = require('../../models').ReportTree;
-
-
-// Get list of custom reports
-exports.index = function(req, res, next) {
-
-  var attributes = ['name', 'description', 'parent'];
-  var per_page = req.query.per_page ? parseInt(req.query.per_page, 10) : 100;
-  var page = req.query.page ? parseInt(req.query.page, 10) : 0;
-
-  var query = {
-    where: {},
-    limit: per_page,
-    offset: page * per_page
-  };
-
-  _.forIn(req.query, function(value, key) {
-    switch (key) {
-      case 'per_page':
-      case 'page':
-        break;
-      case 'sort_by':
-        query.order = util.format('%s %s', req.query.sort_by, req.query.sort_order || 'ASC') || null;
-        break;
-      case 'sort_order':
-        break;
-      case '$':
-        query.where.$or = [];
-        attributes.forEach(function(attribute) {
-          var tmp = {};
-          tmp[attribute] = {
-            $like: '%' + value + '%'
-          };
-
-          query.where.$or.push(tmp);
-        });
-        break;
-      case 'role':
-        query.where.role = {
-          $or: value.split(/[\s,]+/)
-        };
-        break;
-      case 'clientQuery':
-        var params = JSON.parse(value);
-        _.forOwn(params, function(pValue, pKey) {
-          query.where[pKey] = pValue;
-        });
-        break;
-      default:
-        query.where[key] = {
-          $like: {}
-        };
-        query.where[key].$like = '%' + value + '%';
-    }
-  });
-
-  CustomReport
-    .findAndCountAll(query)
-    .then(function(result) {
-      var total_pages = Math.ceil(result.count / per_page);
-      var next_page = total_pages > (query.offset + 1) ? util.format('%s://%s%s?page=%d', req.protocol, req.headers.host, req.baseUrl, page + 1) : null;
-      var previous_page = page > 0 ? util.format('%s://%s%s?page=%d', req.protocol, req.headers.host, req.baseUrl, page - 1) : null;
-
-      res.status(200).send({
-        count: result.count,
-        rows: result.rows,
-        next_page: next_page,
-        previous_page: previous_page,
-        total_pages: total_pages
-      });
-
-    })
-    .catch(function(err) {
-      res.status(500).send({
-        error: 'Something blew up!'
-      });
-    });
-};
-
-// Get a single report
-exports.show = function(req, res) {
-  CustomReport
-    .findById(req.params.id)
-    .then(function(report) {
-      if (!report) {
-        return res.sendStatus(404);
-      }
-      return res.send(report);
-    })
-    .catch(function(err) {
-      return handleError(res, err);
-    });
-};
-
-// Creates a new report in the DB.
-exports.create = function(req, res) {
-  CustomReport
-    .create(req.body)
-    .then(function(report) {
-      return res.status(201).send(report);
-    })
-    .catch(function(err) {
-      return handleError(res, err);
-    });
-};
-
-// Updates an existing report in the DB.
-exports.update = function(req, res) {
-  if (req.body.id) {
-    delete req.body.id;
-  }
-  CustomReport
-    .findById(req.params.id)
-    .then(function(report) {
-      if (!report) {
-        return res.sendStatus(404);
-      }
-      var updated = _.merge(report, req.body);
-      updated.save()
-        .then(function() {
-          return res.status(200).send(report);
-        })
-        .catch(function(err) {
-          return handleError(res, err);
-        });
-    })
-    .catch(function(err) {
-      return handleError(res, err);
-    });
-};
-
-// Deletes a report from the DB.
-exports.destroy = function(req, res) {
-  CustomReport
-    .findById(req.params.id)
-    .then(function(report) {
-      if (!report) {
-        return res.sendStatus(404);
-      }
-      report.destroy()
-        .then(function() {
-          return res.sendStatus(204);
-        })
-        .catch(function(err) {
-          return handleError(res, err);
-        });
-    })
-    .catch(function(err) {
-      return handleError(res, err);
-    });
-};
-
-function handleError(res, err) {
-  return res.status(500).send(err);
-}
+var _0xeccd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74","\x52\x65\x70\x6F\x72\x74\x46\x69\x65\x6C\x64","\x4D\x65\x74\x72\x69\x63","\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x2E\x2E\x2F\x75\x74\x69\x6C\x73\x2F\x72\x65\x70\x6F\x72\x74\x5F\x65\x78\x74\x72\x61\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x75\x74\x69\x6C\x73\x2F\x72\x65\x70\x6F\x72\x74\x5F\x62\x75\x69\x6C\x64","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C","\x73\x69\x6D\x70\x6C\x65\x2D\x72\x61\x6E\x64\x6F\x6D","\x6D\x6F\x6D\x65\x6E\x74","\x63\x68\x69\x6C\x64\x5F\x70\x72\x6F\x63\x65\x73\x73","\x69\x6E\x64\x65\x78","\x63\x61\x74\x63\x68","\x73\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x74\x68\x65\x6E","\x71\x75\x65\x72\x79","\x67\x65\x74\x51\x75\x65\x72\x79","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x67\x65\x74\x52\x65\x70\x6F\x72\x74\x51\x75\x65\x72\x79","\x45\x72\x72\x6F\x72\x20\x67\x65\x74\x74\x69\x6E\x67\x20\x71\x75\x65\x72\x79\x20\x66\x72\x6F\x6D\x20\x61\x70\x69\x3A","\x6C\x6F\x67","\x61\x6C\x6C","\x62\x75\x69\x6C\x64\x51\x75\x65\x72\x79","\x73\x70\x72\x65\x61\x64","\x75\x73\x65\x72","\x62\x75\x69\x6C\x64\x46\x69\x6C\x74\x65\x72","\x66\x6F\x75\x6E\x64\x20\x72\x65\x70\x6F\x72\x74","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x64\x61\x69\x6C\x79","\x74\x72\x75\x65","\x73\x74\x61\x72\x74\x44\x61\x74\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44","\x66\x6F\x72\x6D\x61\x74","\x65\x6E\x64\x44\x61\x74\x65","\x74\x61\x62\x6C\x65","\x64\x61\x74\x61\x56\x61\x6C\x75\x65\x73","\x5F\x68\x69\x73\x74\x6F\x72\x79","","\x72\x65\x70\x6C\x61\x63\x65","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64\x42\x79\x49\x64","\x66\x69\x65\x6C\x64\x73","\x73\x63\x6F\x70\x65","\x70\x72\x65\x76\x69\x65\x77","\x6C\x65\x6E\x67\x74\x68","\x6C\x69\x6D\x69\x74","\x76\x61\x6C\x75\x65","\x74\x61\x6B\x65","\x6F\x66\x66\x73\x65\x74","\x73\x6C\x69\x63\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x4F\x77\x6E","\x66\x6F\x72\x45\x61\x63\x68","\x53\x45\x4C\x45\x43\x54","\x51\x75\x65\x72\x79\x54\x79\x70\x65\x73","\x65\x78\x74\x72\x61\x63\x74\x50\x64\x66","\x50\x44\x46","\x65\x78\x74\x72\x61\x63\x74\x43\x73\x76","\x43\x53\x56","\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x75\x74\x69\x6C\x73\x2F\x72\x65\x70\x6F\x72\x74\x5F\x65\x78\x74\x72\x61\x63\x74\x69\x6F\x6E\x2E\x6A\x73","\x66\x6F\x72\x6B","\x65\x72\x72\x6F\x72","\x63\x68\x69\x6C\x64\x20\x65\x72\x72\x6F\x72","\x6F\x6E","\x63\x6C\x6F\x73\x65","\x63\x68\x69\x6C\x64\x20\x63\x6C\x6F\x73\x65","\x6D\x65\x73\x73\x61\x67\x65","\x63\x68\x69\x6C\x64\x20\x6D\x65\x73\x73\x61\x67\x65","\x6B\x69\x6C\x6C","\x6E\x61\x6D\x65","\x63\x72\x65\x61\x74\x65","\x73\x68\x6F\x77","\x65\x78\x70\x6F\x72\x74","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E","\x70\x61\x72\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x46\x69\x65\x6C\x64\x73","\x63\x6F\x70\x79","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x75\x70\x64\x61\x74\x65\x64\x41\x74","\x62\x6F\x64\x79","\x6D\x61\x70","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x46\x69\x65\x6C\x64\x73","\x69\x6D\x70\x6F\x72\x74","\x75\x70\x64\x61\x74\x65","\x64\x65\x73\x74\x72\x6F\x79","\x6D\x65\x72\x67\x65","\x73\x61\x76\x65","\x69\x73\x41\x72\x72\x61\x79","\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x49\x64","\x4D\x65\x74\x72\x69\x63\x49\x64","\x66\x69\x6E\x64","\x66\x69\x65\x6C\x64","\x6D\x65\x74\x72\x69\x63","\x70\x75\x73\x68","\x54\x68\x65\x20\x6D\x65\x74\x72\x69\x63\x20\x77\x69\x74\x68\x20\x69\x64\x20","\x20\x79\x6F\x75\x20\x73\x70\x65\x63\x69\x66\x69\x65\x64\x20\x64\x6F\x65\x73\x20\x6E\x6F\x74\x20\x65\x78\x69\x73\x74","\x69\x6E\x63\x6C\x75\x64\x65\x73","\x54\x68\x65\x20\x66\x69\x65\x6C\x64\x20","\x20\x79\x6F\x75\x20\x73\x70\x65\x63\x69\x66\x69\x65\x64\x20\x64\x6F\x65\x73\x20\x6E\x6F\x74\x20\x65\x78\x69\x73\x74\x20\x69\x6E\x20\x74\x68\x65\x20\x74\x61\x62\x6C\x65","\x6B\x65\x79\x73","\x66\x69\x6E\x64\x41\x6C\x6C","\x64\x65\x73\x63\x72\x69\x62\x65","\x59\x6F\x75\x20\x68\x61\x76\x65\x20\x6E\x6F\x74\x20\x73\x70\x65\x63\x69\x66\x69\x65\x64\x20\x74\x68\x65\x20\x74\x61\x62\x6C\x65\x20\x6F\x72\x20\x74\x68\x65\x20\x74\x61\x62\x6C\x65\x20\x64\x6F\x65\x73\x20\x6E\x6F\x74\x20\x65\x78\x69\x73\x74","\x67\x72\x6F\x75\x70\x42\x79","\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x6E\x75\x6C\x6C","\x52\x65\x70\x6F\x72\x74\x46\x69\x65\x6C\x64\x73","\x5F","\x52\x65\x70\x6F\x72\x74\x41\x67\x65\x6E\x74\x48\x69\x73\x74\x6F\x72\x79","\x68\x69\x73\x74\x6F\x72\x79","\x72\x65\x70\x6F\x72\x74\x5F\x61\x67\x65\x6E\x74\x5F\x68\x69\x73\x74\x6F\x72\x79","\x52\x65\x70\x6F\x72\x74\x4D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x48\x69\x73\x74\x6F\x72\x79","\x72\x65\x70\x6F\x72\x74\x5F\x6D\x61\x69\x6C\x5F\x73\x65\x73\x73\x69\x6F\x6E\x5F\x68\x69\x73\x74\x6F\x72\x79","\x52\x65\x70\x6F\x72\x74\x51\x75\x65\x75\x65\x48\x69\x73\x74\x6F\x72\x79","\x72\x65\x70\x6F\x72\x74\x5F\x71\x75\x65\x75\x65\x5F\x68\x69\x73\x74\x6F\x72\x79","\x52\x65\x70\x6F\x72\x74\x43\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x48\x69\x73\x74\x6F\x72\x79","\x72\x65\x70\x6F\x72\x74\x5F\x63\x68\x61\x74\x5F\x73\x65\x73\x73\x69\x6F\x6E\x5F\x68\x69\x73\x74\x6F\x72\x79","\x52\x65\x70\x6F\x72\x74\x43\x61\x6C\x6C\x48\x69\x73\x74\x6F\x72\x79","\x72\x65\x70\x6F\x72\x74\x5F\x63\x61\x6C\x6C\x5F\x68\x69\x73\x74\x6F\x72\x79","\x52\x65\x70\x6F\x72\x74\x4D\x65\x6D\x62\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x72\x65\x70\x6F\x72\x74\x5F\x6D\x65\x6D\x62\x65\x72\x5F\x68\x69\x73\x74\x6F\x72\x79","\x52\x65\x70\x6F\x72\x74\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x48\x69\x73\x74\x6F\x72\x79","\x72\x65\x70\x6F\x72\x74\x5F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x5F\x68\x69\x73\x74\x6F\x72\x79","\x52\x65\x70\x6F\x72\x74\x53\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x48\x69\x73\x74\x6F\x72\x79","\x72\x65\x70\x6F\x72\x74\x5F\x73\x6D\x73\x5F\x73\x65\x73\x73\x69\x6F\x6E\x5F\x68\x69\x73\x74\x6F\x72\x79","\x43\x6F\x6E\x74\x61\x63\x74","\x63\x6D\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x76\x6F\x69\x63\x65\x5F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x62\x75\x6C\x6B\x44\x65\x73\x74\x72\x6F\x79","\x69\x64\x73"];_0xeccd[0];var _=require(_0xeccd[1]);var util=require(_0xeccd[2]);var sequelize=require(_0xeccd[4])[_0xeccd[3]];var CustomReport=require(_0xeccd[4])[_0xeccd[5]];var ReportField=require(_0xeccd[4])[_0xeccd[6]];var Metric=require(_0xeccd[4])[_0xeccd[7]];var ExtractedReport=require(_0xeccd[4])[_0xeccd[8]];var extractUtils=require(_0xeccd[9]);var reportBuildUtils=require(_0xeccd[10]);var Util=require(_0xeccd[11]);var sr=require(_0xeccd[12]);var moment=require(_0xeccd[13]);var cp=require(_0xeccd[14]);exports[_0xeccd[15]]=function(_0xa398xe,_0xa398xf,_0xa398x10){return CustomReport[_0xeccd[22]](Util[_0xeccd[21]](_0xa398xe[_0xeccd[20]]))[_0xeccd[19]](function(_0xa398x12){_0xa398xf[_0xeccd[18]](200)[_0xeccd[17]](_0xa398x12)})[_0xeccd[16]](function(_0xa398x11){return handleError(_0xa398xf,_0xa398x11)})};exports[_0xeccd[23]]=function(_0xa398xe,_0xa398xf){return Promise[_0xeccd[26]]([])[_0xeccd[19]](getQuery(_0xa398xe,_0xa398xf))[_0xeccd[19]](function(_0xa398x13){_0xa398xf[_0xeccd[18]](200)[_0xeccd[17]]({query:_0xa398x13})})[_0xeccd[16]](function(_0xa398x11){console[_0xeccd[25]](_0xeccd[24],_0xa398x11)})};function getQuery(_0xa398xe,_0xa398xf){var _0xa398x15;return function(){return CustomReport[_0xeccd[48]](_0xeccd[47])[_0xeccd[46]](_0xa398xe[_0xeccd[45]][_0xeccd[44]])[_0xeccd[19]](function(_0xa398x17){console[_0xeccd[25]](_0xeccd[31]);if(!_0xa398x17){return _0xa398xf[_0xeccd[32]](404)};if(_0xa398xe[_0xeccd[20]][_0xeccd[33]]&&_0xa398xe[_0xeccd[20]][_0xeccd[33]]===_0xeccd[34]){_0xa398xe[_0xeccd[20]][_0xeccd[35]]=moment()[_0xeccd[37]](_0xeccd[36]);_0xa398xe[_0xeccd[20]][_0xeccd[38]]=moment()[_0xeccd[37]](_0xeccd[36]);_0xa398x17[_0xeccd[40]][_0xeccd[39]]=_0xa398x17[_0xeccd[40]][_0xeccd[39]][_0xeccd[43]](_0xeccd[41],_0xeccd[42])};delete _0xa398xe[_0xeccd[20]][_0xeccd[33]];_0xa398x15=_0xa398x17[_0xeccd[40]];return _0xa398x15[_0xeccd[39]]})[_0xeccd[19]](reportBuildUtils[_0xeccd[30]](_0xa398xe[_0xeccd[29]]))[_0xeccd[19]](function(_0xa398x16){return [_0xa398x16,_0xa398x15]})[_0xeccd[28]](reportBuildUtils[_0xeccd[27]](_0xa398xe[_0xeccd[20]]))}}exports[_0xeccd[49]]=function(_0xa398xe,_0xa398xf){var _0xa398x18;return Promise[_0xeccd[26]]([])[_0xeccd[19]](getQuery(_0xa398xe,_0xa398xf))[_0xeccd[19]](function(_0xa398x13){return _0xa398x13?sequelize[_0xeccd[20]](_0xa398x13,{type:sequelize[_0xeccd[60]][_0xeccd[59]]}):[]})[_0xeccd[19]](function(_0xa398x19){_0xa398x18=_0xa398x19[_0xeccd[50]];if(_0xa398xe[_0xeccd[20]][_0xeccd[51]]){_0xa398x19=_(_0xa398x19)[_0xeccd[55]](_0xa398xe[_0xeccd[20]][_0xeccd[54]]||0)[_0xeccd[53]](_0xa398xe[_0xeccd[20]][_0xeccd[51]])[_0xeccd[52]]()};_[_0xeccd[58]](_0xa398x19,function(_0xa398x1a){_[_0xeccd[57]](_0xa398x1a,function(_0xa398x1b,_0xa398x1c){if(_0xa398x1b instanceof Date){_0xa398x1a[_0xa398x1c]=moment(_0xa398x1b)[_0xeccd[37]](_0xeccd[56]).toString()}})});_0xa398xf[_0xeccd[18]](200)[_0xeccd[17]]({rows:_0xa398x19,count:_0xa398x18})})[_0xeccd[16]](function(_0xa398x11){console[_0xeccd[25]](_0xa398x11);return handleError(_0xa398xf,_0xa398x11)})};exports[_0xeccd[61]]=function(_0xa398xe,_0xa398xf){docExtract(_0xa398xe,_0xa398xf,_0xeccd[62])};exports[_0xeccd[63]]=function(_0xa398xe,_0xa398xf){docExtract(_0xa398xe,_0xa398xf,_0xeccd[64])};function docExtract(_0xa398xe,_0xa398xf,_0xa398x1e){CustomReport[_0xeccd[48]](_0xeccd[47])[_0xeccd[46]](_0xa398xe[_0xeccd[45]][_0xeccd[44]])[_0xeccd[19]](function(_0xa398x17){if(!_0xa398x17){return _0xa398xf[_0xeccd[32]](404)};if(_0xa398xe[_0xeccd[20]][_0xeccd[33]]&&_0xa398xe[_0xeccd[20]][_0xeccd[33]]===_0xeccd[34]){_0xa398xe[_0xeccd[20]][_0xeccd[35]]=moment()[_0xeccd[37]](_0xeccd[36]);_0xa398xe[_0xeccd[20]][_0xeccd[38]]=moment()[_0xeccd[37]](_0xeccd[36]);_0xa398x17[_0xeccd[40]][_0xeccd[39]]=_0xa398x17[_0xeccd[40]][_0xeccd[39]][_0xeccd[43]](_0xeccd[41],_0xeccd[42])};delete _0xa398xe[_0xeccd[20]][_0xeccd[33]];return [_0xa398x17,ExtractedReport[_0xeccd[76]]({name:_0xa398x17[_0xeccd[75]],startDate:_0xa398xe[_0xeccd[20]][_0xeccd[35]]||null,endDate:_0xa398xe[_0xeccd[20]][_0xeccd[38]]||null,output:_0xa398x1e,UserId:_0xa398xe[_0xeccd[29]][_0xeccd[44]]})]})[_0xeccd[28]](function(_0xa398x17,_0xa398x1f){var _0xa398x20=cp[_0xeccd[66]](__dirname+_0xeccd[65]);_0xa398x20[_0xeccd[69]](_0xeccd[72],function(_0xa398x21){console[_0xeccd[25]](_0xeccd[73],_0xa398x21);_0xa398x20[_0xeccd[74]]()})[_0xeccd[69]](_0xeccd[70],function(){console[_0xeccd[25]](_0xeccd[71])})[_0xeccd[69]](_0xeccd[67],function(_0xa398x11){console[_0xeccd[25]](_0xeccd[68],_0xa398x11)});_0xa398x20[_0xeccd[17]]({report:_0xa398x17,query:_0xa398xe[_0xeccd[20]],extractedId:_0xa398x1f[_0xeccd[44]],user:_0xa398xe[_0xeccd[29]],type:_0xa398x1e})})[_0xeccd[16]](function(_0xa398x11){console[_0xeccd[25]](_0xa398x11);return handleError(_0xa398xf,_0xa398x11)});return _0xa398xf[_0xeccd[32]](200)}exports[_0xeccd[77]]=function(_0xa398xe,_0xa398xf){return CustomReport[_0xeccd[48]](_0xeccd[47])[_0xeccd[46]](_0xa398xe[_0xeccd[45]][_0xeccd[44]])[_0xeccd[19]](function(_0xa398x17){if(!_0xa398x17){return _0xa398xf[_0xeccd[32]](404)};return _0xa398xf[_0xeccd[17]](_0xa398x17)})[_0xeccd[16]](function(_0xa398x11){return handleError(_0xa398xf,_0xa398x11)})};exports[_0xeccd[78]]=function(_0xa398xe,_0xa398xf){return CustomReport[_0xeccd[48]]({method:[_0xeccd[82],{CustomReportId:_0xa398xe[_0xeccd[45]][_0xeccd[44]]}]})[_0xeccd[46]](_0xa398xe[_0xeccd[45]][_0xeccd[44]],{attributes:[_0xeccd[79],_0xeccd[80],_0xeccd[75],_0xeccd[81],_0xeccd[39]]})[_0xeccd[19]](function(_0xa398x17){if(!_0xa398x17){return _0xa398xf[_0xeccd[32]](404)};return _0xa398xf[_0xeccd[17]](_0xa398x17)})[_0xeccd[16]](function(_0xa398x11){return handleError(_0xa398xf,_0xa398x11)})};exports[_0xeccd[83]]=function(_0xa398xe,_0xa398xf){var _0xa398x22;return sequelize[_0xeccd[88]](function(_0xa398x23){return CustomReport[_0xeccd[48]](_0xeccd[47])[_0xeccd[46]](_0xa398xe[_0xeccd[45]][_0xeccd[44]])[_0xeccd[19]](function(_0xa398x17){if(!_0xa398x17){return _0xa398xf[_0xeccd[32]](404)};var _0xa398x24=_0xa398x17[_0xeccd[40]];delete _0xa398x24[_0xeccd[44]];delete _0xa398x24[_0xeccd[84]];delete _0xa398x24[_0xeccd[85]];_0xa398x24[_0xeccd[81]]=_0xa398xe[_0xeccd[86]][_0xeccd[81]];_0xa398x22=_[_0xeccd[87]](_0xa398x24.Fields,_0xeccd[40]);return CustomReport[_0xeccd[76]](_0xa398x24,{transaction:_0xa398x23})})[_0xeccd[19]](function(_0xa398x17){return [_0xa398x17,_0xa398x22]})[_0xeccd[28]](createFields(_0xa398x23))})[_0xeccd[19]](function(){return _0xa398xf[_0xeccd[32]](201)})[_0xeccd[16]](function(_0xa398x11){console[_0xeccd[25]](_0xa398x11);return handleError(_0xa398xf,_0xa398x11)})};exports[_0xeccd[76]]=function(_0xa398xe,_0xa398xf){var _0xa398x15;return sequelize[_0xeccd[88]](function(_0xa398x23){return CustomReport[_0xeccd[76]](_0xa398xe[_0xeccd[86]],{transaction:_0xa398x23})[_0xeccd[19]](function(_0xa398x17){_0xa398x15=_0xa398x17;return [_0xa398x15,_0xa398xe[_0xeccd[86]][_0xeccd[89]]]})[_0xeccd[28]](createFields(_0xa398x23))})[_0xeccd[19]](function(){return _0xa398xf[_0xeccd[18]](201)[_0xeccd[17]](_0xa398x15)})[_0xeccd[16]](function(_0xa398x11){console[_0xeccd[25]](_0xa398x11);return handleError(_0xa398xf,_0xa398x11)})};exports[_0xeccd[90]]=function(_0xa398xe,_0xa398xf){var _0xa398x15;return sequelize[_0xeccd[88]](function(_0xa398x23){return CustomReport[_0xeccd[76]](_0xa398xe[_0xeccd[86]],{transaction:_0xa398x23})[_0xeccd[19]](function(_0xa398x17){_0xa398x15=_0xa398x17;return [_0xa398x15,_0xa398xe[_0xeccd[86]][_0xeccd[89]]]})[_0xeccd[28]](createImportFields(_0xa398x23))})[_0xeccd[19]](function(){return _0xa398xf[_0xeccd[18]](201)[_0xeccd[17]](_0xa398x15)})[_0xeccd[16]](function(_0xa398x11){console[_0xeccd[25]](_0xa398x11);return handleError(_0xa398xf,_0xa398x11)})};exports[_0xeccd[91]]=function(_0xa398xe,_0xa398xf,_0xa398x10){if(_0xa398xe[_0xeccd[86]][_0xeccd[44]]){delete _0xa398xe[_0xeccd[86]][_0xeccd[44]]};var _0xa398x15;return sequelize[_0xeccd[88]](function(_0xa398x23){return CustomReport[_0xeccd[46]](_0xa398xe[_0xeccd[45]][_0xeccd[44]])[_0xeccd[19]](function(_0xa398x17){if(!_0xa398x17){return _0xa398xf[_0xeccd[32]](404)};var _0xa398x25=_[_0xeccd[93]](_0xa398x17,_0xa398xe[_0xeccd[86]]);return _0xa398x17[_0xeccd[94]]({transaction:_0xa398x23})})[_0xeccd[19]](function(_0xa398x17){_0xa398x15=_0xa398x17;if(_0xa398xe[_0xeccd[86]][_0xeccd[89]]){return ReportField[_0xeccd[92]]({where:{CustomReportId:_0xa398xe[_0xeccd[45]][_0xeccd[44]]},transaction:_0xa398x23})}})[_0xeccd[19]](function(){return [_0xa398x15,_0xa398xe[_0xeccd[86]][_0xeccd[89]]]})[_0xeccd[28]](createFields(_0xa398x23))})[_0xeccd[19]](function(){return _0xa398xf[_0xeccd[32]](200)})[_0xeccd[16]](function(_0xa398x11){console[_0xeccd[25]](_0xa398x11);return handleError(_0xa398xf,_0xa398x11)})};function createFields(_0xa398x23){return function(_0xa398x17,_0xa398x27){if(_0xa398x27&&Array[_0xeccd[95]](_0xa398x27)&&_0xa398x27[_0xeccd[50]]){var _0xa398x28=getTable(_0xa398x17[_0xeccd[39]]);if(_0xa398x28){var _0xa398x29;return _0xa398x28[_0xeccd[109]]()[_0xeccd[19]](function(_0xa398x2e){_0xa398x29=_[_0xeccd[107]](_0xa398x2e);return Metric[_0xeccd[108]]()})[_0xeccd[19]](function(_0xa398x2a){var _0xa398x2b=[];_0xa398x2a=_[_0xeccd[87]](_0xa398x2a,_0xeccd[40]);_0xa398x27[_0xeccd[58]](function(_0xa398x2c){_0xa398x2c[_0xeccd[96]]=_0xa398x17[_0xeccd[44]];if(_0xa398x2c[_0xeccd[97]]){var _0xa398x2d=_[_0xeccd[98]](_0xa398x2a,{id:_0xa398x2c[_0xeccd[97]]});if(_0xa398x2d){_0xa398x2c[_0xeccd[99]]=_0xa398x2d[_0xeccd[100]];_0xa398x2b[_0xeccd[101]](ReportField[_0xeccd[76]](_0xa398x2c,{transaction:_0xa398x23}))}else {throw  new sequelize.Error(_0xeccd[102]+_0xa398x2c[_0xeccd[97]]+_0xeccd[103])}}else {if(_[_0xeccd[104]](_0xa398x29,_0xa398x2c[_0xeccd[99]])){_0xa398x2b[_0xeccd[101]](ReportField[_0xeccd[76]](_0xa398x2c,{transaction:_0xa398x23}))}else {throw  new sequelize.Error(_0xeccd[105]+_0xa398x2c[_0xeccd[99]]+_0xeccd[106])}}});return _0xa398x2b})[_0xeccd[26]]()}else {throw  new sequelize.Error(_0xeccd[110])}}}}function createImportFields(_0xa398x23){return function(_0xa398x17,_0xa398x27){if(_0xa398x27&&Array[_0xeccd[95]](_0xa398x27)&&_0xa398x27[_0xeccd[50]]){var _0xa398x28=getTable(_0xa398x17[_0xeccd[39]]);if(_0xa398x28){var _0xa398x29;return _0xa398x28[_0xeccd[109]]()[_0xeccd[19]](function(_0xa398x2e){_0xa398x29=_[_0xeccd[107]](_0xa398x2e);return Metric[_0xeccd[108]]()})[_0xeccd[19]](function(_0xa398x2a){var _0xa398x2b=[];var _0xa398x30=_[_0xeccd[111]](_0xa398x27,_0xeccd[97]);_[_0xeccd[57]](_0xa398x30,function(_0xa398x31,_0xa398x1c){if(_0xa398x1c!==_0xeccd[112]&&_0xa398x1c!==_0xeccd[113]){_0xa398x31[0][_0xeccd[7]][_0xeccd[114]][_0xeccd[58]](function(_0xa398x2c){_0xa398x2c[_0xeccd[96]]=_0xa398x17[_0xeccd[44]]});_0xa398x31[0][_0xeccd[7]][_0xeccd[75]]+=_0xeccd[115]+sr({length:5});console[_0xeccd[25]](_0xeccd[100],_0xa398x31[0].Metric);_0xa398x2b[_0xeccd[101]](Metric[_0xeccd[76]](_0xa398x31[0].Metric,{include:[{model:ReportField,as:_0xeccd[114]}],transaction:_0xa398x23}))}else {_0xa398x31[_0xeccd[58]](function(_0xa398x2c){if(_[_0xeccd[104]](_0xa398x29,_0xa398x2c[_0xeccd[99]])){_0xa398x2c[_0xeccd[96]]=_0xa398x17[_0xeccd[44]];_0xa398x2b[_0xeccd[101]](ReportField[_0xeccd[76]](_0xa398x2c,{transaction:_0xa398x23}))}else {throw  new sequelize.Error(_0xeccd[105]+_0xa398x2c[_0xeccd[99]]+_0xeccd[106])}})}});return _0xa398x2b})[_0xeccd[26]]()}else {throw  new sequelize.Error(_0xeccd[110])}}}}function getTable(_0xa398x33){var _0xa398x28;switch(_0xa398x33){case _0xeccd[118]:_0xa398x28=require(_0xeccd[4])[_0xeccd[117]][_0xeccd[116]];break;case _0xeccd[120]:_0xa398x28=require(_0xeccd[4])[_0xeccd[117]][_0xeccd[119]];break;case _0xeccd[122]:_0xa398x28=require(_0xeccd[4])[_0xeccd[117]][_0xeccd[121]];break;case _0xeccd[124]:_0xa398x28=require(_0xeccd[4])[_0xeccd[117]][_0xeccd[123]];break;case _0xeccd[126]:_0xa398x28=require(_0xeccd[4])[_0xeccd[117]][_0xeccd[125]];break;case _0xeccd[128]:_0xa398x28=require(_0xeccd[4])[_0xeccd[117]][_0xeccd[127]];break;case _0xeccd[130]:_0xa398x28=require(_0xeccd[4])[_0xeccd[117]][_0xeccd[129]];break;case _0xeccd[132]:_0xa398x28=require(_0xeccd[4])[_0xeccd[117]][_0xeccd[131]];break;case _0xeccd[134]:_0xa398x28=require(_0xeccd[4])[_0xeccd[133]];break;case _0xeccd[136]:_0xa398x28=require(_0xeccd[4])[_0xeccd[135]];break;default:};return _0xa398x28}exports[_0xeccd[92]]=function(_0xa398xe,_0xa398xf){return CustomReport[_0xeccd[46]](_0xa398xe[_0xeccd[45]][_0xeccd[44]])[_0xeccd[19]](function(_0xa398x17){if(!_0xa398x17){return _0xa398xf[_0xeccd[32]](404)};return _0xa398x17[_0xeccd[92]]()})[_0xeccd[19]](function(){return _0xa398xf[_0xeccd[32]](204)})[_0xeccd[16]](function(_0xa398x11){return handleError(_0xa398xf,_0xa398x11)})};exports[_0xeccd[137]]=function(_0xa398xe,_0xa398xf){return CustomReport[_0xeccd[92]]({where:{id:_0xa398xe[_0xeccd[20]][_0xeccd[138]]},individualHooks:true})[_0xeccd[19]](function(){return _0xa398xf[_0xeccd[32]](204)})[_0xeccd[16]](function(_0xa398x11){return handleError(_0xa398xf,_0xa398x11)})};function handleError(_0xa398xf,_0xa398x11){return _0xa398xf[_0xeccd[18]](500)[_0xeccd[17]](_0xa398x11)}
\ No newline at end of file