Built motion from commit da617fac.|2.6.6
[motion2.git] / server / api / intServicenowField / intServicenowField.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x1b10=['querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','offset','undefined','limit','count','set','apply','reject','save','destroy','then','end','error','stack','name','send','index','map','ServicenowField','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','includeAll','findAll','show','params','length','include','options','find','catch','create','update','body','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js'];(function(_0x37a79c,_0x2b19f0){var _0x561d89=function(_0x19bee3){while(--_0x19bee3){_0x37a79c['push'](_0x37a79c['shift']());}};_0x561d89(++_0x2b19f0);}(_0x1b10,0x17f));var _0x01b1=function(_0x56383e,_0x291bf4){_0x56383e=_0x56383e-0x0;var _0x551adf=_0x1b10[_0x56383e];return _0x551adf;};'use strict';var emlformat=require(_0x01b1('0x0'));var rimraf=require(_0x01b1('0x1'));var zipdir=require(_0x01b1('0x2'));var jsonpatch=require(_0x01b1('0x3'));var rp=require(_0x01b1('0x4'));var moment=require(_0x01b1('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x01b1('0x6'));var util=require(_0x01b1('0x7'));var path=require(_0x01b1('0x8'));var sox=require(_0x01b1('0x9'));var csv=require(_0x01b1('0xa'));var ejs=require(_0x01b1('0xb'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x01b1('0xc'));var squel=require(_0x01b1('0xd'));var crypto=require(_0x01b1('0xe'));var jsforce=require(_0x01b1('0xf'));var deskjs=require(_0x01b1('0x10'));var toCsv=require(_0x01b1('0xa'));var querystring=require(_0x01b1('0x11'));var Papa=require(_0x01b1('0x12'));var Redis=require(_0x01b1('0x13'));var authService=require(_0x01b1('0x14'));var qs=require(_0x01b1('0x15'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x01b1('0x16'));var logger=require(_0x01b1('0x17'))('api');var utils=require(_0x01b1('0x18'));var config=require(_0x01b1('0x19'));var licenseUtil=require(_0x01b1('0x1a'));var db=require(_0x01b1('0x1b'))['db'];function respondWithStatusCode(_0x5e5c1f,_0x5d78d3){_0x5d78d3=_0x5d78d3||0xcc;return function(_0x1cfa00){if(_0x1cfa00){return _0x5e5c1f[_0x01b1('0x1c')](_0x5d78d3);}return _0x5e5c1f[_0x01b1('0x1d')](_0x5d78d3)['end']();};}function respondWithResult(_0x1fb97b,_0x52d1ee){_0x52d1ee=_0x52d1ee||0xc8;return function(_0x34b415){if(_0x34b415){return _0x1fb97b['status'](_0x52d1ee)[_0x01b1('0x1e')](_0x34b415);}};}function respondWithFilteredResult(_0xa34438,_0x1065ed){return function(_0x354158){if(_0x354158){var _0x1e920c=typeof _0x1065ed[_0x01b1('0x1f')]===_0x01b1('0x20')&&typeof _0x1065ed[_0x01b1('0x21')]===_0x01b1('0x20');var _0xb52503=_0x354158[_0x01b1('0x22')];var _0x2396ba=_0x1e920c?0x0:_0x1065ed['offset'];var _0x21701b=_0x1e920c?_0x354158[_0x01b1('0x22')]:_0x1065ed[_0x01b1('0x1f')]+_0x1065ed[_0x01b1('0x21')];var _0x16b9fc;if(_0x21701b>=_0xb52503){_0x21701b=_0xb52503;_0x16b9fc=0xc8;}else{_0x16b9fc=0xce;}_0xa34438[_0x01b1('0x1d')](_0x16b9fc);return _0xa34438[_0x01b1('0x23')]('Content-Range',_0x2396ba+'-'+_0x21701b+'/'+_0xb52503)[_0x01b1('0x1e')](_0x354158);}return null;};}function patchUpdates(_0x41767b){return function(_0x3b2c09){try{jsonpatch[_0x01b1('0x24')](_0x3b2c09,_0x41767b,!![]);}catch(_0xc929a3){return BPromise[_0x01b1('0x25')](_0xc929a3);}return _0x3b2c09[_0x01b1('0x26')]();};}function saveUpdates(_0x2831f6,_0x2eec3c){return function(_0x20eae1){if(_0x20eae1){return _0x20eae1['update'](_0x2831f6)['then'](function(_0x30c0ac){return _0x30c0ac;});}return null;};}function removeEntity(_0x279f5c,_0x20192a){return function(_0x59bd6f){if(_0x59bd6f){return _0x59bd6f[_0x01b1('0x27')]()[_0x01b1('0x28')](function(){_0x279f5c['status'](0xcc)[_0x01b1('0x29')]();});}};}function handleEntityNotFound(_0x596436,_0x272f66){return function(_0x5826b0){if(!_0x5826b0){_0x596436[_0x01b1('0x1c')](0x194);}return _0x5826b0;};}function handleError(_0x5e0dab,_0x94c75d){_0x94c75d=_0x94c75d||0x1f4;return function(_0xf067f3){logger[_0x01b1('0x2a')](_0xf067f3[_0x01b1('0x2b')]);if(_0xf067f3[_0x01b1('0x2c')]){delete _0xf067f3['name'];}_0x5e0dab[_0x01b1('0x1d')](_0x94c75d)[_0x01b1('0x2d')](_0xf067f3);};}exports[_0x01b1('0x2e')]=function(_0x23fe1d,_0x499324){var _0x5cc7f5={},_0x419792={},_0x40fd4c={'count':0x0,'rows':[]};var _0x3dc730=_[_0x01b1('0x2f')](db[_0x01b1('0x30')][_0x01b1('0x31')],function(_0x352774){return{'name':_0x352774[_0x01b1('0x32')],'type':_0x352774[_0x01b1('0x33')][_0x01b1('0x34')]};});_0x419792[_0x01b1('0x35')]=_[_0x01b1('0x2f')](_0x3dc730,_0x01b1('0x2c'));_0x419792[_0x01b1('0x36')]=_[_0x01b1('0x37')](_0x23fe1d[_0x01b1('0x36')]);_0x419792[_0x01b1('0x38')]=_[_0x01b1('0x39')](_0x419792['model'],_0x419792[_0x01b1('0x36')]);_0x5cc7f5[_0x01b1('0x3a')]=_[_0x01b1('0x39')](_0x419792['model'],qs[_0x01b1('0x3b')](_0x23fe1d[_0x01b1('0x36')][_0x01b1('0x3b')]));_0x5cc7f5['attributes']=_0x5cc7f5[_0x01b1('0x3a')]['length']?_0x5cc7f5[_0x01b1('0x3a')]:_0x419792[_0x01b1('0x35')];if(!_0x23fe1d[_0x01b1('0x36')]['hasOwnProperty'](_0x01b1('0x3c'))){_0x5cc7f5[_0x01b1('0x21')]=qs['limit'](_0x23fe1d['query'][_0x01b1('0x21')]);_0x5cc7f5[_0x01b1('0x1f')]=qs['offset'](_0x23fe1d['query']['offset']);}_0x5cc7f5[_0x01b1('0x3d')]=qs[_0x01b1('0x3e')](_0x23fe1d[_0x01b1('0x36')]['sort']);_0x5cc7f5[_0x01b1('0x3f')]=qs[_0x01b1('0x38')](_[_0x01b1('0x40')](_0x23fe1d[_0x01b1('0x36')],_0x419792['filters']),_0x3dc730);if(_0x23fe1d['query'][_0x01b1('0x41')]){_0x5cc7f5['where']=_[_0x01b1('0x42')](_0x5cc7f5['where'],{'$or':_[_0x01b1('0x2f')](_0x3dc730,function(_0x236f23){if(_0x236f23['type']!==_0x01b1('0x43')){var _0x443e77={};_0x443e77[_0x236f23[_0x01b1('0x2c')]]={'$like':'%'+_0x23fe1d[_0x01b1('0x36')][_0x01b1('0x41')]+'%'};return _0x443e77;}})});}_0x5cc7f5=_[_0x01b1('0x42')]({},_0x5cc7f5,_0x23fe1d['options']);var _0x4c6690={'where':_0x5cc7f5[_0x01b1('0x3f')]};return db['ServicenowField'][_0x01b1('0x22')](_0x4c6690)[_0x01b1('0x28')](function(_0x386731){_0x40fd4c['count']=_0x386731;if(_0x23fe1d[_0x01b1('0x36')][_0x01b1('0x44')]){_0x5cc7f5['include']=[{'all':!![]}];}return db[_0x01b1('0x30')][_0x01b1('0x45')](_0x5cc7f5);})[_0x01b1('0x28')](function(_0x12990e){_0x40fd4c['rows']=_0x12990e;return _0x40fd4c;})[_0x01b1('0x28')](respondWithFilteredResult(_0x499324,_0x5cc7f5))['catch'](handleError(_0x499324,null));};exports[_0x01b1('0x46')]=function(_0x475ae4,_0x1f6290){var _0x1547ad={'raw':!![],'where':{'id':_0x475ae4[_0x01b1('0x47')]['id']}},_0x74f92c={};_0x74f92c[_0x01b1('0x35')]=_[_0x01b1('0x37')](db[_0x01b1('0x30')][_0x01b1('0x31')]);_0x74f92c['query']=_['keys'](_0x475ae4[_0x01b1('0x36')]);_0x74f92c[_0x01b1('0x38')]=_[_0x01b1('0x39')](_0x74f92c[_0x01b1('0x35')],_0x74f92c['query']);_0x1547ad[_0x01b1('0x3a')]=_[_0x01b1('0x39')](_0x74f92c[_0x01b1('0x35')],qs[_0x01b1('0x3b')](_0x475ae4[_0x01b1('0x36')]['fields']));_0x1547ad[_0x01b1('0x3a')]=_0x1547ad['attributes'][_0x01b1('0x48')]?_0x1547ad[_0x01b1('0x3a')]:_0x74f92c[_0x01b1('0x35')];if(_0x475ae4['query'][_0x01b1('0x44')]){_0x1547ad[_0x01b1('0x49')]=[{'all':!![]}];}_0x1547ad=_[_0x01b1('0x42')]({},_0x1547ad,_0x475ae4[_0x01b1('0x4a')]);return db[_0x01b1('0x30')][_0x01b1('0x4b')](_0x1547ad)[_0x01b1('0x28')](handleEntityNotFound(_0x1f6290,null))['then'](respondWithResult(_0x1f6290,null))[_0x01b1('0x4c')](handleError(_0x1f6290,null));};exports[_0x01b1('0x4d')]=function(_0x25ffb0,_0x43100f){return db[_0x01b1('0x30')][_0x01b1('0x4d')](_0x25ffb0['body'],{})[_0x01b1('0x28')](respondWithResult(_0x43100f,0xc9))[_0x01b1('0x4c')](handleError(_0x43100f,null));};exports[_0x01b1('0x4e')]=function(_0x1af593,_0x1d9911){if(_0x1af593[_0x01b1('0x4f')]['id']){delete _0x1af593[_0x01b1('0x4f')]['id'];}return db[_0x01b1('0x30')][_0x01b1('0x4b')]({'where':{'id':_0x1af593[_0x01b1('0x47')]['id']}})[_0x01b1('0x28')](handleEntityNotFound(_0x1d9911,null))['then'](saveUpdates(_0x1af593[_0x01b1('0x4f')],null))['then'](respondWithResult(_0x1d9911,null))['catch'](handleError(_0x1d9911,null));};exports[_0x01b1('0x27')]=function(_0x1ce56a,_0x5ca701){return db[_0x01b1('0x30')][_0x01b1('0x4b')]({'where':{'id':_0x1ce56a[_0x01b1('0x47')]['id']}})['then'](handleEntityNotFound(_0x5ca701,null))[_0x01b1('0x28')](removeEntity(_0x5ca701,null))[_0x01b1('0x4c')](handleError(_0x5ca701,null));};