a93ca99ee5d8ac36f4c8fd7235b680cbea029480
[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 _0x2328=['send','index','rawAttributes','model','keys','query','filters','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','type','VIRTUAL','options','includeAll','ServicenowField','findAll','rows','catch','show','intersection','find','create','body','params','html-pdf','eml-format','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','sendStatus','status','end','count','offset','limit','Content-Range','json','reject','save','update','then','destroy','stack','name'];(function(_0x4907de,_0x5bbdc6){var _0x482054=function(_0x39ecf6){while(--_0x39ecf6){_0x4907de['push'](_0x4907de['shift']());}};_0x482054(++_0x5bbdc6);}(_0x2328,0xae));var _0x8232=function(_0x3d5c8c,_0x1126bd){_0x3d5c8c=_0x3d5c8c-0x0;var _0x4482c8=_0x2328[_0x3d5c8c];return _0x4482c8;};'use strict';var pdf=require(_0x8232('0x0'));var emlformat=require(_0x8232('0x1'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0x8232('0x2'));var rp=require(_0x8232('0x3'));var moment=require(_0x8232('0x4'));var BPromise=require(_0x8232('0x5'));var Mustache=require('mustache');var util=require(_0x8232('0x6'));var path=require(_0x8232('0x7'));var sox=require(_0x8232('0x8'));var csv=require(_0x8232('0x9'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x8232('0xa'));var squel=require(_0x8232('0xb'));var crypto=require(_0x8232('0xc'));var jsforce=require(_0x8232('0xd'));var deskjs=require(_0x8232('0xe'));var toCsv=require('to-csv');var querystring=require(_0x8232('0xf'));var Papa=require(_0x8232('0x10'));var Redis=require(_0x8232('0x11'));var authService=require('../../components/auth/service');var qs=require(_0x8232('0x12'));var hardwareService=require(_0x8232('0x13'));var logger=require(_0x8232('0x14'))(_0x8232('0x15'));var utils=require(_0x8232('0x16'));var config=require(_0x8232('0x17'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x5dedf8,_0x11358c){_0x11358c=_0x11358c||0xcc;return function(_0x2af861){if(_0x2af861){return _0x5dedf8[_0x8232('0x18')](_0x11358c);}return _0x5dedf8[_0x8232('0x19')](_0x11358c)[_0x8232('0x1a')]();};}function respondWithResult(_0x394167,_0x33a0fa){_0x33a0fa=_0x33a0fa||0xc8;return function(_0x4dd50e){if(_0x4dd50e){return _0x394167[_0x8232('0x19')](_0x33a0fa)['json'](_0x4dd50e);}};}function respondWithFilteredResult(_0xa25bcb,_0x4d43d1){return function(_0x4397e5){if(_0x4397e5){var _0x1a9705=_0x4397e5[_0x8232('0x1b')],_0x4cc35a=_0x4d43d1[_0x8232('0x1c')],_0x41c407=_0x4d43d1[_0x8232('0x1c')]+_0x4d43d1[_0x8232('0x1d')],_0x871407;if(_0x41c407>=_0x1a9705){_0x41c407=_0x1a9705;_0x871407=0xc8;}else{_0x871407=0xce;}_0xa25bcb[_0x8232('0x19')](_0x871407);return _0xa25bcb['set'](_0x8232('0x1e'),_0x4cc35a+'-'+_0x41c407+'/'+_0x1a9705)[_0x8232('0x1f')](_0x4397e5);}return null;};}function patchUpdates(_0x15d8cb){return function(_0x13e75c){try{jsonpatch['apply'](_0x13e75c,_0x15d8cb,!![]);}catch(_0x3fc068){return BPromise[_0x8232('0x20')](_0x3fc068);}return _0x13e75c[_0x8232('0x21')]();};}function saveUpdates(_0x5846bd,_0x2fc0f5){return function(_0xf979cc){if(_0xf979cc){return _0xf979cc[_0x8232('0x22')](_0x5846bd)[_0x8232('0x23')](function(_0x178865){return _0x178865;});}return null;};}function removeEntity(_0x4c4a82,_0x19ddeb){return function(_0x23ab6a){if(_0x23ab6a){return _0x23ab6a[_0x8232('0x24')]()[_0x8232('0x23')](function(){_0x4c4a82['status'](0xcc)[_0x8232('0x1a')]();});}};}function handleEntityNotFound(_0x568990,_0x5c7df2){return function(_0x81f835){if(!_0x81f835){_0x568990['sendStatus'](0x194);}return _0x81f835;};}function handleError(_0x1875ab,_0x36d132){_0x36d132=_0x36d132||0x1f4;return function(_0xae874d){logger['error'](_0xae874d[_0x8232('0x25')]);if(_0xae874d[_0x8232('0x26')]){delete _0xae874d[_0x8232('0x26')];}_0x1875ab[_0x8232('0x19')](_0x36d132)[_0x8232('0x27')](_0xae874d);};}exports[_0x8232('0x28')]=function(_0x2c85c8,_0x2ac529){var _0x1ab672={},_0x106f07={},_0x112f17={'count':0x0,'rows':[]};var _0x566d13=db['ServicenowField'][_0x8232('0x29')];_0x106f07[_0x8232('0x2a')]=_[_0x8232('0x2b')](_0x566d13);_0x106f07[_0x8232('0x2c')]=_[_0x8232('0x2b')](_0x2c85c8['query']);_0x106f07[_0x8232('0x2d')]=_['intersection'](_0x106f07[_0x8232('0x2a')],_0x106f07[_0x8232('0x2c')]);_0x1ab672[_0x8232('0x2e')]=_['intersection'](_0x106f07[_0x8232('0x2a')],qs[_0x8232('0x2f')](_0x2c85c8[_0x8232('0x2c')][_0x8232('0x2f')]));_0x1ab672[_0x8232('0x2e')]=_0x1ab672[_0x8232('0x2e')][_0x8232('0x30')]?_0x1ab672[_0x8232('0x2e')]:_0x106f07[_0x8232('0x2a')];if(!_0x2c85c8[_0x8232('0x2c')][_0x8232('0x31')](_0x8232('0x32'))){_0x1ab672[_0x8232('0x1d')]=qs[_0x8232('0x1d')](_0x2c85c8['query'][_0x8232('0x1d')]);_0x1ab672[_0x8232('0x1c')]=qs['offset'](_0x2c85c8[_0x8232('0x2c')]['offset']);}_0x1ab672[_0x8232('0x33')]=qs[_0x8232('0x34')](_0x2c85c8[_0x8232('0x2c')][_0x8232('0x34')]);_0x1ab672[_0x8232('0x35')]=qs[_0x8232('0x2d')](_[_0x8232('0x36')](_0x2c85c8[_0x8232('0x2c')],_0x106f07['filters']));if(_0x2c85c8[_0x8232('0x2c')][_0x8232('0x37')]){_0x1ab672[_0x8232('0x35')]=_[_0x8232('0x38')](_0x1ab672[_0x8232('0x35')],{'$or':_['map'](_0x566d13,function(_0x11debc){if(_0x11debc[_0x8232('0x39')]['key']!==_0x8232('0x3a')){var _0x565ad9={};_0x565ad9[_0x11debc['field']]={'$like':'%'+_0x2c85c8['query'][_0x8232('0x37')]+'%'};return _0x565ad9;}})});}_0x1ab672=_[_0x8232('0x38')]({},_0x1ab672,_0x2c85c8[_0x8232('0x3b')]);var _0x1bcec0={'where':_0x1ab672[_0x8232('0x35')]};return db['ServicenowField'][_0x8232('0x1b')](_0x1bcec0)[_0x8232('0x23')](function(_0xa08113){_0x112f17['count']=_0xa08113;if(_0x2c85c8['query'][_0x8232('0x3c')]){_0x1ab672['include']=[{'all':!![]}];}return db[_0x8232('0x3d')][_0x8232('0x3e')](_0x1ab672);})[_0x8232('0x23')](function(_0x40cf1b){_0x112f17[_0x8232('0x3f')]=_0x40cf1b;return _0x112f17;})[_0x8232('0x23')](respondWithFilteredResult(_0x2ac529,_0x1ab672))[_0x8232('0x40')](handleError(_0x2ac529,null));};exports[_0x8232('0x41')]=function(_0x2abd87,_0x2d6cd4){var _0x4f0c40={'raw':!![],'where':{'id':_0x2abd87['params']['id']}},_0x1693fe={};_0x1693fe[_0x8232('0x2a')]=_['keys'](db[_0x8232('0x3d')][_0x8232('0x29')]);_0x1693fe[_0x8232('0x2c')]=_[_0x8232('0x2b')](_0x2abd87['query']);_0x1693fe[_0x8232('0x2d')]=_[_0x8232('0x42')](_0x1693fe[_0x8232('0x2a')],_0x1693fe[_0x8232('0x2c')]);_0x4f0c40[_0x8232('0x2e')]=_['intersection'](_0x1693fe[_0x8232('0x2a')],qs['fields'](_0x2abd87[_0x8232('0x2c')][_0x8232('0x2f')]));_0x4f0c40[_0x8232('0x2e')]=_0x4f0c40[_0x8232('0x2e')][_0x8232('0x30')]?_0x4f0c40[_0x8232('0x2e')]:_0x1693fe['model'];if(_0x2abd87['query'][_0x8232('0x3c')]){_0x4f0c40['include']=[{'all':!![]}];}_0x4f0c40=_[_0x8232('0x38')]({},_0x4f0c40,_0x2abd87[_0x8232('0x3b')]);return db['ServicenowField'][_0x8232('0x43')](_0x4f0c40)[_0x8232('0x23')](handleEntityNotFound(_0x2d6cd4,null))[_0x8232('0x23')](respondWithResult(_0x2d6cd4,null))[_0x8232('0x40')](handleError(_0x2d6cd4,null));};exports['create']=function(_0x274cfe,_0x57a285){return db[_0x8232('0x3d')][_0x8232('0x44')](_0x274cfe['body'],{})[_0x8232('0x23')](respondWithResult(_0x57a285,0xc9))[_0x8232('0x40')](handleError(_0x57a285,null));};exports['update']=function(_0x432feb,_0x315f32){if(_0x432feb[_0x8232('0x45')]['id']){delete _0x432feb[_0x8232('0x45')]['id'];}return db[_0x8232('0x3d')]['find']({'where':{'id':_0x432feb[_0x8232('0x46')]['id']}})[_0x8232('0x23')](handleEntityNotFound(_0x315f32,null))[_0x8232('0x23')](saveUpdates(_0x432feb[_0x8232('0x45')],null))[_0x8232('0x23')](respondWithResult(_0x315f32,null))[_0x8232('0x40')](handleError(_0x315f32,null));};exports[_0x8232('0x24')]=function(_0x16b3c8,_0x973ed5){return db[_0x8232('0x3d')][_0x8232('0x43')]({'where':{'id':_0x16b3c8['params']['id']}})[_0x8232('0x23')](handleEntityNotFound(_0x973ed5,null))[_0x8232('0x23')](removeEntity(_0x973ed5,null))[_0x8232('0x40')](handleError(_0x973ed5,null));};