Built motion from commit d5e4af8c.|2.6.23
[motion2.git] / server / api / cmContactHasItem / cmContactHasItem.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 _0x194e=['map','CmContactHasItem','rawAttributes','fieldName','type','key','query','keys','attributes','intersection','fields','length','model','nolimit','order','sort','where','filters','pick','filter','merge','VIRTUAL','options','includeAll','findAll','rows','catch','show','params','include','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','CmContactHasItems','UserProfileSection','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','eml-format','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','json','offset','limit','undefined','count','set','Content-Range','reject','save','update','then','get','UserProfileResource','destroy','end','error','stack','name','index'];(function(_0x13d07a,_0x41efc3){var _0x5ee0ee=function(_0x4ca94a){while(--_0x4ca94a){_0x13d07a['push'](_0x13d07a['shift']());}};_0x5ee0ee(++_0x41efc3);}(_0x194e,0x7c));var _0xe194=function(_0xe009b5,_0x45b4b4){_0xe009b5=_0xe009b5-0x0;var _0x4c1d04=_0x194e[_0xe009b5];return _0x4c1d04;};'use strict';var emlformat=require(_0xe194('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xe194('0x1'));var jsonpatch=require(_0xe194('0x2'));var rp=require(_0xe194('0x3'));var moment=require('moment');var BPromise=require(_0xe194('0x4'));var Mustache=require(_0xe194('0x5'));var util=require(_0xe194('0x6'));var path=require(_0xe194('0x7'));var sox=require(_0xe194('0x8'));var csv=require(_0xe194('0x9'));var ejs=require(_0xe194('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xe194('0xb'));var squel=require(_0xe194('0xc'));var crypto=require('crypto');var jsforce=require(_0xe194('0xd'));var deskjs=require(_0xe194('0xe'));var toCsv=require(_0xe194('0x9'));var querystring=require(_0xe194('0xf'));var Papa=require(_0xe194('0x10'));var Redis=require('ioredis');var authService=require(_0xe194('0x11'));var qs=require(_0xe194('0x12'));var as=require(_0xe194('0x13'));var hardwareService=require(_0xe194('0x14'));var logger=require('../../config/logger')(_0xe194('0x15'));var utils=require(_0xe194('0x16'));var config=require(_0xe194('0x17'));var licenseUtil=require(_0xe194('0x18'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x4f43b2,_0x492861){_0x492861=_0x492861||0xcc;return function(_0x280d1a){if(_0x280d1a){return _0x4f43b2[_0xe194('0x19')](_0x492861);}return _0x4f43b2[_0xe194('0x1a')](_0x492861)['end']();};}function respondWithResult(_0x22611b,_0x2e4403){_0x2e4403=_0x2e4403||0xc8;return function(_0x9159d3){if(_0x9159d3){return _0x22611b[_0xe194('0x1a')](_0x2e4403)[_0xe194('0x1b')](_0x9159d3);}};}function respondWithFilteredResult(_0x56b7e2,_0x35f2a1){return function(_0x47b432){if(_0x47b432){var _0x3ddbd6=typeof _0x35f2a1[_0xe194('0x1c')]==='undefined'&&typeof _0x35f2a1[_0xe194('0x1d')]===_0xe194('0x1e');var _0x54c443=_0x47b432[_0xe194('0x1f')];var _0x2e55f0=_0x3ddbd6?0x0:_0x35f2a1[_0xe194('0x1c')];var _0x4895e5=_0x3ddbd6?_0x47b432[_0xe194('0x1f')]:_0x35f2a1[_0xe194('0x1c')]+_0x35f2a1['limit'];var _0x384b0e;if(_0x4895e5>=_0x54c443){_0x4895e5=_0x54c443;_0x384b0e=0xc8;}else{_0x384b0e=0xce;}_0x56b7e2[_0xe194('0x1a')](_0x384b0e);return _0x56b7e2[_0xe194('0x20')](_0xe194('0x21'),_0x2e55f0+'-'+_0x4895e5+'/'+_0x54c443)[_0xe194('0x1b')](_0x47b432);}return null;};}function patchUpdates(_0x23f4bd){return function(_0x345b17){try{jsonpatch['apply'](_0x345b17,_0x23f4bd,!![]);}catch(_0x3b740b){return BPromise[_0xe194('0x22')](_0x3b740b);}return _0x345b17[_0xe194('0x23')]();};}function saveUpdates(_0xb81222,_0x5a5ee5){return function(_0xec1be3){if(_0xec1be3){return _0xec1be3[_0xe194('0x24')](_0xb81222)[_0xe194('0x25')](function(_0x29923f){return _0x29923f;});}return null;};}function removeEntity(_0x45e61e,_0xdf7161){return function(_0x26858f){if(_0x26858f){return _0x26858f['destroy']()['then'](function(){var _0xfcd2e9=_0x26858f[_0xe194('0x26')]({'plain':!![]});var _0x436c='CmContactHasItems';return db[_0xe194('0x27')][_0xe194('0x28')]({'where':{'type':_0x436c,'resourceId':_0xfcd2e9['id']}})[_0xe194('0x25')](function(){return _0x26858f;});})[_0xe194('0x25')](function(){_0x45e61e[_0xe194('0x1a')](0xcc)[_0xe194('0x29')]();});}};}function handleEntityNotFound(_0x8749,_0x3f8ab9){return function(_0x316ae4){if(!_0x316ae4){_0x8749[_0xe194('0x19')](0x194);}return _0x316ae4;};}function handleError(_0x3635b8,_0x6e5534){_0x6e5534=_0x6e5534||0x1f4;return function(_0x51ff33){logger[_0xe194('0x2a')](_0x51ff33[_0xe194('0x2b')]);if(_0x51ff33[_0xe194('0x2c')]){delete _0x51ff33['name'];}_0x3635b8[_0xe194('0x1a')](_0x6e5534)['send'](_0x51ff33);};}exports[_0xe194('0x2d')]=function(_0x31572e,_0x47a3c7){var _0x228703={},_0x4b310c={},_0x2588f3={'count':0x0,'rows':[]};var _0x34bda2=_[_0xe194('0x2e')](db[_0xe194('0x2f')][_0xe194('0x30')],function(_0x14d913){return{'name':_0x14d913[_0xe194('0x31')],'type':_0x14d913[_0xe194('0x32')][_0xe194('0x33')]};});_0x4b310c['model']=_[_0xe194('0x2e')](_0x34bda2,_0xe194('0x2c'));_0x4b310c[_0xe194('0x34')]=_[_0xe194('0x35')](_0x31572e[_0xe194('0x34')]);_0x4b310c['filters']=_['intersection'](_0x4b310c['model'],_0x4b310c['query']);_0x228703[_0xe194('0x36')]=_[_0xe194('0x37')](_0x4b310c['model'],qs[_0xe194('0x38')](_0x31572e[_0xe194('0x34')][_0xe194('0x38')]));_0x228703[_0xe194('0x36')]=_0x228703[_0xe194('0x36')][_0xe194('0x39')]?_0x228703[_0xe194('0x36')]:_0x4b310c[_0xe194('0x3a')];if(!_0x31572e[_0xe194('0x34')]['hasOwnProperty'](_0xe194('0x3b'))){_0x228703[_0xe194('0x1d')]=qs[_0xe194('0x1d')](_0x31572e['query'][_0xe194('0x1d')]);_0x228703[_0xe194('0x1c')]=qs[_0xe194('0x1c')](_0x31572e[_0xe194('0x34')][_0xe194('0x1c')]);}_0x228703[_0xe194('0x3c')]=qs[_0xe194('0x3d')](_0x31572e[_0xe194('0x34')][_0xe194('0x3d')]);_0x228703[_0xe194('0x3e')]=qs[_0xe194('0x3f')](_[_0xe194('0x40')](_0x31572e[_0xe194('0x34')],_0x4b310c[_0xe194('0x3f')]),_0x34bda2);if(_0x31572e[_0xe194('0x34')][_0xe194('0x41')]){_0x228703[_0xe194('0x3e')]=_[_0xe194('0x42')](_0x228703['where'],{'$or':_[_0xe194('0x2e')](_0x34bda2,function(_0x1993d2){if(_0x1993d2[_0xe194('0x32')]!==_0xe194('0x43')){var _0x370c77={};_0x370c77[_0x1993d2['name']]={'$like':'%'+_0x31572e[_0xe194('0x34')]['filter']+'%'};return _0x370c77;}})});}_0x228703=_[_0xe194('0x42')]({},_0x228703,_0x31572e[_0xe194('0x44')]);var _0x58f317={'where':_0x228703[_0xe194('0x3e')]};return db[_0xe194('0x2f')]['count'](_0x58f317)['then'](function(_0x443b84){_0x2588f3[_0xe194('0x1f')]=_0x443b84;if(_0x31572e[_0xe194('0x34')][_0xe194('0x45')]){_0x228703['include']=[{'all':!![]}];}return db['CmContactHasItem'][_0xe194('0x46')](_0x228703);})[_0xe194('0x25')](function(_0x131472){_0x2588f3[_0xe194('0x47')]=_0x131472;return _0x2588f3;})[_0xe194('0x25')](respondWithFilteredResult(_0x47a3c7,_0x228703))[_0xe194('0x48')](handleError(_0x47a3c7,null));};exports[_0xe194('0x49')]=function(_0x1550fc,_0x5c4093){var _0x30bc17={'raw':!![],'where':{'id':_0x1550fc[_0xe194('0x4a')]['id']}},_0x52d59f={};_0x52d59f[_0xe194('0x3a')]=_[_0xe194('0x35')](db[_0xe194('0x2f')][_0xe194('0x30')]);_0x52d59f['query']=_[_0xe194('0x35')](_0x1550fc[_0xe194('0x34')]);_0x52d59f[_0xe194('0x3f')]=_[_0xe194('0x37')](_0x52d59f[_0xe194('0x3a')],_0x52d59f['query']);_0x30bc17['attributes']=_[_0xe194('0x37')](_0x52d59f[_0xe194('0x3a')],qs['fields'](_0x1550fc['query'][_0xe194('0x38')]));_0x30bc17[_0xe194('0x36')]=_0x30bc17[_0xe194('0x36')][_0xe194('0x39')]?_0x30bc17[_0xe194('0x36')]:_0x52d59f['model'];if(_0x1550fc[_0xe194('0x34')]['includeAll']){_0x30bc17[_0xe194('0x4b')]=[{'all':!![]}];}_0x30bc17=_['merge']({},_0x30bc17,_0x1550fc[_0xe194('0x44')]);return db[_0xe194('0x2f')][_0xe194('0x4c')](_0x30bc17)[_0xe194('0x25')](handleEntityNotFound(_0x5c4093,null))[_0xe194('0x25')](respondWithResult(_0x5c4093,null))[_0xe194('0x48')](handleError(_0x5c4093,null));};exports[_0xe194('0x4d')]=function(_0x38e6d9,_0x1777a9){return db[_0xe194('0x2f')]['create'](_0x38e6d9[_0xe194('0x4e')],{})[_0xe194('0x25')](function(_0x4dd732){var _0x516df6=_0x38e6d9[_0xe194('0x4f')][_0xe194('0x26')]({'plain':!![]});if(!_0x516df6)throw new Error(_0xe194('0x50'));if(_0x516df6['role']===_0xe194('0x4f')){var _0x45981f=_0x4dd732[_0xe194('0x26')]({'plain':!![]});var _0x139dbc=_0xe194('0x51');return db[_0xe194('0x52')][_0xe194('0x4c')]({'where':{'name':_0x139dbc,'userProfileId':_0x516df6['userProfileId']},'raw':!![]})[_0xe194('0x25')](function(_0xef27ed){if(_0xef27ed&&_0xef27ed[_0xe194('0x53')]===0x0){return db[_0xe194('0x27')]['create']({'name':_0x45981f[_0xe194('0x2c')],'resourceId':_0x45981f['id'],'type':_0xef27ed['name'],'sectionId':_0xef27ed['id']},{})[_0xe194('0x25')](function(){return _0x4dd732;});}else{return _0x4dd732;}})[_0xe194('0x48')](function(_0x3c358a){logger[_0xe194('0x2a')](_0xe194('0x54'),_0x3c358a);throw _0x3c358a;});}return _0x4dd732;})[_0xe194('0x25')](respondWithResult(_0x1777a9,0xc9))['catch'](handleError(_0x1777a9,null));};exports['update']=function(_0x51194a,_0x113354){if(_0x51194a[_0xe194('0x4e')]['id']){delete _0x51194a[_0xe194('0x4e')]['id'];}return db[_0xe194('0x2f')][_0xe194('0x4c')]({'where':{'id':_0x51194a[_0xe194('0x4a')]['id']}})['then'](handleEntityNotFound(_0x113354,null))[_0xe194('0x25')](saveUpdates(_0x51194a['body'],null))['then'](respondWithResult(_0x113354,null))[_0xe194('0x48')](handleError(_0x113354,null));};exports[_0xe194('0x28')]=function(_0x26b5be,_0x5d0bcb){return db[_0xe194('0x2f')][_0xe194('0x4c')]({'where':{'id':_0x26b5be[_0xe194('0x4a')]['id']}})[_0xe194('0x25')](handleEntityNotFound(_0x5d0bcb,null))[_0xe194('0x25')](removeEntity(_0x5d0bcb,null))[_0xe194('0x48')](handleError(_0x5d0bcb,null));};